Here’s a few 32 vs. 64-bit SDLMAME benchmarks run on Fedora Core 6. Both versions were run on the 64-bit version. Relevant hardware is: Intel Core 2 Duo E6600 @ 3.2 GHz (ASUS P5B Deluxe, Thermalright XP-90 air cooler), 2 GB of Corsair XMS DDR2 RAM, 512 MB NVidia GeForce 7800GT with 97.46 drivers.
Both versions were run with no config file, no artwork, and these switches: -window -noswitchres -video opengl -nothrottle -nosound -ftr 5000
In case EEPROM needed initializing (crusnusa, umk3, sexyparo) that was done first before the benchmark run. GCC 4.1.1 20070105 (Red Hat 4.1.1-51) was used in both cases. The 32-bit binary was PM=1 optimized, the 64-bit AMD64=1 optimized.
Note: DOAPP was chosen because it runs a 640×480 framebuffer, thus putting max stress on the PSX GPU emulation.
Sega System 32 is slower on 64-bit, but it’s within the margin of error. In all other cases, 64-bit has a definite advantage, although in no case is it a full speed vs. not distinction. Previous 64-bit Linux benchmarks with XMAME and GCC 3.x showed no win at all, so GCC 4 definitely improves 64-bit codegen.
| Game | 32-bit | 64-bit |
|---|---|---|
| crusnusa | 99.2 | 112.6 |
| propcycl | 32.9 | 43.9 |
| doapp | 137.2 | 155.3 |
| pacman | 2437.8 | 2828.0 |
| galaga | 1843.7 | 2022.6 |
| outrun | 353.9 | 408.8 |
| gforce2 | 274.9 | 294.2 |
| contcirc | 434.3 | 479.0 |
| ga2 | 200.2 | 197.1 |
| orunners | 116.0 | 119.1 |
| sexyparo | 412.4 | 459.3 |
| rayforce | 288.7 | 329.5 |
| shienryu | 177.4 | 200.9 |
| dnmtdeka | 144.9 | 160.5 |
| umk3 | 256.7 | 281.8 |
| kof98 | 426.6 | 499.7 |
