Visual C++ 5.0 is a C++ compiler by Microsoft released in 1997. I use this as a real-world benchmark for 1997-1999 era CPUs.

In order to benchmark I've taken the Apache 1.3b3 source code (released 1997) and compile it via command line. To record the computing time I've written a very small program in Turbo Pascal to dump the actual time into a file. This way I can record the time when the compiler starts and record the time when it's finished. Deduct the times and you'll get the total computation time.

I can share the source-code and timestamp utility but not the Visual C++ 5.0 application since it's copyrighted by Microsoft.

My benchmark method


1. Install Visual C++ 5.0.
2. Unpack my files to a D:\>-drive so you'll have the following files:
- D:\13b3> which contains the source code
- D:\BENCH.BAT which is the command to start the benchmark.
- D:\SHOWTIME.EXE (and SHOWTIME.PAS) which is the utility to show the current time.
- VCVARS32.BAT which loads the path environment needed for C++. It's called via BENCH.BAT.

You can also run the files from a different drive (like C:\> ) but you'll have to manually change the paths in the BENCH.BAT file. In hindsight I should've written it to work with relative paths ;).

3. Start BENCH.BAT and let it do its thing. Deduct starting time from the finished time at the end and you'll know how long it took to compile. On my benchmark system Windows run at 1024x768x16@75Hz and the command window is maximised but not full-screen.

Image
The time between 21:48:59 and 21:51:51 is 172 seconds.

Since it does require some I/O by reading source code and writing the compiled binaries scores may differentiate when running the benchmark from system to system. However, on my ALi Aladdin IV (GA-5AX) system I've consistently used the same CF-card drive setup so the computation times are comparable.

Benchmarks run with this application
CPU (chipset) Visual C++ 5.0 compiler score
K6-2+ 550 (ALi Aladdin 5)
36.00
K6-2+ 500 (ALi Aladdin 5)
38.00
K6-2+ 450 (ALi Aladdin 5)
40.00
K6-III 400 (ALi Aladdin 5)
40.00
K6-III+ 400 (ALi Aladdin 5)
41.00
K6-2 550AGR (ALi Aladdin 5)
44.00
K6-2 500AFX (ALi Aladdin 5)
46.00
K6-2+ 350 (ALi Aladdin 5)
48.00
K6-2 475AHX (ALi Aladdin 5)
48.00
K6-2 450AHX (ALi Aladdin 5)
49.00
Mobile K6-2P 433ADK (ALi Aladdin 5)
50.00
K6-2 400AFR (ALi Aladdin 5)
51.00
K6-2 380AFR (ALi Aladdin 5)
52.00
K6-2 350AFR (ALi Aladdin 5)
56.00
K6-2 300AFR (ALi Aladdin 5)
60.00
MII 400GP/95x3 (ALi Aladdin 5)
61.00
K6-2 366AFR (ALi Aladdin 5)
64.00
6x86MX PR333 (ALi Aladdin 5)
66.00
K6-2 333AFR (ALi Aladdin 5)
67.00
MII 333GP/75x3.5 (ALi Aladdin 5)
68.00
MII 333GP/83x3 (ALi Aladdin 5)
69.00
MII 333GP/66x4 (ALi Aladdin 5)
70.00
K6-2 300AFR-66 (ALi Aladdin 5)
71.00
MII 300GP/66x3.5 (ALi Aladdin 5)
73.00
K6-2 266AFR (ALi Aladdin 5)
75.00
K6 266AFR (ALi Aladdin 5)
76.00
MII 300GP/75x3 (ALi Aladdin 5)
76.00
K6-2 233AFR (ALi Aladdin 5)
81.00
MII 233GP (ALi Aladdin 5)
82.00
K6 233ANR (ALi Aladdin 5)
82.00
6x86MX PR233/66 (ALi Aladdin 5)
82.00
Winchip 2 233 (ALi Aladdin 5)
82.00
Pentium MMX 233 (ALi Aladdin 5)
84.00
6x86MX PR233/75 (ALi Aladdin 5)
87.00
K6 200ALR (ALi Aladdin 5)
89.00
Winchip C6 225 (ALi Aladdin 5)
91.00
Pentium MMX 200 (ALi Aladdin 5)
92.00
mP6 266 (ALi Aladdin 5)
93.00
6x86MX PR200/66 (ALi Aladdin 5)
94.00
6x86MX PR200/75 (ALi Aladdin 5)
98.00
K6 166ALR (ALi Aladdin 5)
101.00
Winchip C6 200 (ALi Aladdin 5)
102.00
Pentium MMX 166 (ALi Aladdin 5)
104.00
6x86 P200+ (ALi Aladdin 5)
113.00
Pentium 200 (ALi Aladdin 5)
114.00
Pentium 166 (ALi Aladdin 5)
127.00
6x86 PR166 (ALi Aladdin 5)
128.00
Pentium 133 (ALi Aladdin 5)
141.00
Pentium 100 (ALi Aladdin 5)
172.00