I wanted to find out how some of the compatibility compile-time switches affect the ARAnyM performance. My goal was to find a default set of options that would bring as much speed as possible while retaining high compatibility with real Atari hardware. I also wanted to set up a reasonable real-world test case and compare normal, MMU and JIT builds.
Tested setup: my Athlon XP 2200+ (1866 MHz), selfcompiled ARAnyM 0.9.4beta in various configurations (see below), AFROS 0.9.4beta default boot (FreeMiNT, XaAES, fVDI 800×608). FreeMiNT's ramdisk (in 64 MB FastRAM), 600 files in 59 folders (total size about 10893 kB) copied to the ramdisk and used as source for the compressing programs. The destination file resided in ramdisk as well. I think I managed to set up the worst case real world scenario for testing the CPU power and RAM throughput… For comparison I also added CPU and Mem speed as measured by a synthetic benchmarking program named Kronos.
| ARAnyM 0.9.4 configurations | tgz [s] | zip [s] | sum [s] | 1/sum | Kcpu | Kmem |
|---|---|---|---|---|---|---|
| addressing real | 67.7 | 72.5 | 140.2 | 103.2% | 25.2 | 203.6 |
| addressing direct | 67.9 | 76.9 | 144.8 | 100.0% | 24.2 | 200.8 |
| real + protect2k | 70.3 | 73.9 | 144.2 | 100.4% | 25.6 | 205.3 |
| direct + protect2k | 73.4 | 74.4 | 147.8 | 98.0% | 24.9 | 196.0 |
| real + cxx | 67.6 | 72.7 | 140.3 | 103.2% | 25.3 | 203.7 |
| direct + cxx | 68.3 | 74.2 | 142.5 | 101.6% | 25.1 | 201.3 |
| real + protect2k + cxx | 71.8 | 74.9 | 146.7 | 98.7% | 25.3 | 203.5 |
| direct + protect2k + cxx | 73.0 | 76.1 | 149.1 | 97.1% | 24.6 | 197.5 |
| MMU + addressing real | 259.4 | 230.6 | 490.0 | 29.6% | 10.1 | 26.6 |
| MMU + addressing direct | 265.9 | 231.8 | 497.7 | 29.1% | 10.0 | 26.7 |
| MMU + real + protect2k | 259.8 | 229.2 | 489.0 | 29.6% | 10.1 | 26.6 |
| MMU + direct + protect2k | 268.9 | 232.1 | 501.0 | 28.9% | 10.0 | 26.7 |
| MMU + real + cxx | 156.2 | 154.8 | 311.0 | 46.6% | 14.1 | 71.2 |
| MMU + direct + cxx | 159.0 | 154.0 | 313.0 | 46.3% | 14.1 | 70.8 |
| MMU + real + protect2k + cxx | 156.6 | 154.9 | 311.5 | 46.5% | 14.1 | 70.9 |
| MMU + direct + protect2k + cxx | 158.9 | 154.0 | 312.9 | 46.3% | 14.0 | 70.8 |
| JIT | 5.9 | 7.1 | 13.0 | 1113.8% | 777.0 | 575.0 |
My conclusions from the results above:
Written by Petr Stehlik on 2006/10/09