FIRST: Be very, very careful with benchmark values! If you got some results out of your measurement - ask always if your result can be true... The operation system and its cache mechanisms are your biggest hostile.
- I use as few RAM as possible (e.g. only 32MB) to prevent the OS from caching something (which whitewashes your results)
- If possible make relative measurements - change only one item e.g. CPU-benchmarks always on one motherboard, with the same cache and memory... and change the CPU only. It makes it much easier to interpret the results.
- Before I start I check with "top" if any resources consuming background programs (like makemandb) are runing.
- If the results are not as aspected: I go back to a part with known performance, measure again and try to find the reason for the wrong values (in the most cases I set a wrong jumper or turbo mode is not activated...).
Dhrystone and Flops
For CPU performance I use the programs: Dhrystone 2 (integer processing power) and flops-2.0 (floating point calculations with double precision).
Quite old programs but in my opinion these tests fit better for a 486 than current programs (to test any 64bit performance stuff on a 486 doesn't make sense, or?).
NetBSD still has both programs in its ports-system but OpenBSD has not. Compiling these programs with a current gcc or clang ends with some errors...
I adapted the source code of both programs to compile again under current Linux / NetBSD / OpenBSD distributions:
You must select the compiler in the Makefile (NetBSD 9 and Ubuntu 18.04.4 LTS use gcc, OpenBSD 6.7 clang as standard compiler). A "make all" generates the executable file (dry2 in case of Dhrystone or flops).
For the system performance (cache, memory, hard disc) I haven't found a simple to use program for BSD, so I wrote my own.
PerfTest - simple RAM / cache / file access test program
The size of the cache memory can be handed over (default is 256 kBytes). PerfTest can do three tests for you:
- Copy a memory block which is four times bigger than the cache size (to avoid cache operations).
- Copy a memory block which is four times smaller than the cache size (to demand cache operations).
- Write a text file with 4 MBytes to the hard disc and read it back.
Test one and two are repeated 25 times and the mean / maximum / minimum values are printed out. You can check here if all results have the same dimension - if one value is complete out of range the measurement was disturbed (e.g. the operation system has done something in the background) and you must repeat it.
PerfTest is written in ANSI-C to compile on very old operation systems also. Installation is quite easy:
- unpack the zipped tar-file
- go into the PerfTest-directory and execute "make all"
- The PerfTest-executable file is generated and you can call it with e.g. "./PerfTest -c 512" (under the assumption you have 512kBytes cache).
How reliable is the program? Good question... You must always keep in mind: the CPU feeds the copy process with data. The quicker the CPU the faster the copy process. If you want to compare e.g. the memory throughput of different motherboards you should always use the same CPU.
Current version is 0.4.1
Measurements
Here I publish some measurement results of topics which interested me. BUT don't forget - for old computers applies: the statements are valid for exactly my setup. An other motherboard version / bios / cards combination could achieve different results - this makes old computer systems so exciting... :o)
If you want to have the best performance for your vintage computer system: double-check with a measurement is the only meaningful way.
386 - half 486 - 486
The mainboard BC3486UL is an all-rounder: 386, 486DLC or 486 CPU's are possible. Are the performance differences really that big?
UMC U5SX against Intel 486SX-25
The UMC processor has the image to be faster than an Intel 486SX due its microcode optimizations. Can we reproduce it under BSD also?
Who is the fastest 486 with 40MHz?
Here I tested all my 486 processors with 40MHz:
- TI TX486DLC-40BGA
- Cyrix Cx486S40
- Cyrix Cx486DX40
- UMC U5S-Super40
- AMD 486DX-40
What is the fastest CPU for a motherboard with a 5V power supply only?
I own some "5V only" motherboards. These boards have neither a 3.3V regulator nor an assembly option for one. In my cupboard are the AMD 486DX2-80 in the 5V version and the Cyrix 486DX2-80 produced by ST. Do exist big differences between these processors?
The 486 chipsets race
Processors are always in the spotlight but the mainboard with the chipset is no less important...
Late 486 against early 586 class
Old platform against the new one - the winner is clear, or?
falk.richter*at*yandex.com
Last update: March 13, 2022