-
Notifications
You must be signed in to change notification settings - Fork 10
Dhrystone results
This page stores various results obtained from running the Dhrystone benchmark included in this package. Bold text indicates the best result from a given compiler.
Due to Dhrystone's apparent inefficacy on more recent hardware, this page isn't often updated with new systems.
Jump to: Embedded Systems, Workstations, Servers
The t5325 is a miniscule low-power thin client unveiled by HP in late 2009, designed around a Marvell Kirkwood 88F6281 system-on-a-chip implementing a Marvell designed ARMv5TE-compliant "Sheeva" processor core clocked at 1.2 GHz with independent 16 KiB instruction and data caches and a 256 KiB unified secondary cache. All tests are performed under the HP "ThinPro" operating system, a lightly customized variant of Debian Lenny, on a system not specifically configured for benchmarking.
GCC 4.2.4: 10,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 714,285.7 | 406.5 |
-O1 |
1,428,571.4 | 813.1 |
-O2 |
1,428,571.4 | 813.1 |
-O3 |
1,666,666.7 | 948.6 |
-O3 -ffast-math |
1,666,666.7 | 948.6 |
GCC 4.2.4: 10,000,000 loops, with register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 769,230.8 | 437.8 |
-O1 |
1,250,000 | 711.4 |
-O2 |
1,250,000 | 711.4 |
-O3 |
1,428,571.4 | 813.1 |
-O3 -ffast-math |
1,428,571.4 | 813.1 |
No data is available for -O1
due to a compiler bug interfering with register allocation.
GCC 4.2.1: 10,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 158,730.2 | 90.3 |
-O1 |
N/A | N/A |
-O2 |
277,777.8 | 158.1 |
-O3 |
333,333.3 | 189.7 |
GCC 4.2.1: 10,000,000 loops, with register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 169,491.5 | 96.5 |
-O1 |
N/A | N/A |
-O2 |
285,714.3 | 162.6 |
-O3 |
344,827.6 | 196.3 |
The mid-range offering of Apple's final generation of PowerPC-based professional systems, the 2.3DC was introduced in October 2005 and was designed around IBM's new dual-core 64-bit PowerPC 970MP processor, which featured two PowerPC 970 cores each with 32 KiB data cache, 64 KiB instruction cache, and a unified 1 MiB secondary cache, all running at a clock frequency of 2.3 GHz. The 970MP is interfaced to an off-chip DDR2 memory controller by a 1.15 GHz, 64-bit data bus composed of two separate 32-bit uni-directional buses. This system is outfitted with 8 GiB of error-correcting DDR2 memory clocked at 266 MHz (with an effective 533 MT/s data rate.)
All tests are performed under Mac OS 10.4.11, on a system not specifically configured for benchmarking.
Apple GCC 4.0.1: 50,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 1,515,151.5 | 862.4 |
-O1 |
4,545,454.5 | 2587.1 |
-O2 |
5,000,000.0 | 2,845.8 |
-O3 |
6,250,000.0 | 3,557.2 |
Apple GCC 4.0.1: 50,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 1,612,903.2 | 918.0 |
-O1 |
5,000,000.0 | 2,845.8 |
-O2 |
5,000,000.0 | 2,845.8 |
-O3 |
7,142,857.1 | 4,065.4 |
A mid-range Unix workstation released in 1999, based on HP's indigenous PA-8500 microprocessor with 1 MiB of on-die data cache, 512 KiB of on-die instruction cache and a clock frequency of 400 MHz. All tests are performed under HP-UX 11.11 (11i v1) on a system not specifically configured for benchmarking, using time()
for timing and with an HZ
value of 100.
The differences in performance between Dhrystone run with and without register variables is minimal, likely due to the PA-8500's large number of general-purpose registers (32 general-purpose and 32 floating-point) and fast, spacious on-die caches.
HP C B.11.11.16: 50,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 442,477.9 | 251.8 |
+O1 |
666,666.7 | 379.4 |
+O2 |
1,000,000 | 569.2 |
+O3 |
1,282,051.3 | 729.7 |
+O4 |
1,851,851.9 | 1,054 |
-fast |
1,470,588.2 | 837 |
HP C B.11.11.16: 50,000,000 loops, with register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 495,049.5 | 281.8 |
+O1 |
657,894.7 | 374.4 |
+O2 |
1,000,000 | 569.2 |
+O3 |
1,282,051.3 | 729.7 |
+O4 |
1,785,714.3 | 1,016.3 |
-fast |
1,470,588.2 | 837 |
Note: HP C +O2
is roughly equivalent to GCC -O1
GCC 4.2.3: 50,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 431,034.5 | 245.3 |
-O1 |
806,451.6 | 459 |
-O2 |
833,333.3 | 474.3 |
-O3 |
1,136,363.6 | 646.8 |
-O3 -ffast-math |
1,136,363.6 | 646.8 |
GCC 4.2.3: 50,000,000 loops, with register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 438,596.5 | 249.6 |
-O1 |
781,250.0 | 444.6 |
-O2 |
806,451.6 | 459 |
-O3 |
1,162,790.7 | 661.8 |
-O3 -ffast-math |
1,162,790.7 | 661.8 |
Note: -Ofast
is only available in GCC >=4.7
The Sun Fire T1000 is an entry-level 1U rackmounted server released in early 2006 as one of the first systems to use Sun's radically multi-threaded UltraSPARC T1 "Niagra" microprocessor, derived from a SPARC implementation originally developed by Afara Websystems that features four, six or eight relatively simple SPARC V9 cores with individual 16 KiB instruction caches and 8 KiB data caches, a shared 3 MiB secondary cache and a single floating-point unit shared among all cores. Each core also has four threads, all sharing a single pipeline and a massive register file composed of 640 64-bit registers that allows for a thread's state to be quickly saved and resumed in a single cycle in order to maximize processor utilization in heavily multi-threaded workloads. The T1 utilized in the T1000 is clocked at 1 GHz.
All tests are performed on a T1000 with an 8-core UltraSPARC T1 running Solaris 10 10/09 with no specific configuration for benchmarking purposes. Because Dhrystone does not support multiple threads/processors, all results are for execution on one thread only. Keep this in mind when interpreting these results, as the T1's single-thread performance can be incredibly weak.
Sun Studio 12/Sun C 5.9: 10,000,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 625,000 | 355.7 |
-xO1 |
370,370.4 | 210.8 |
-xO2 |
833,333.3 | 474.3 |
-xO3 |
909,090.9 | 517.4 |
-xO4 |
909,090.9 | 517.4 |
-xO5 |
1,000,000 | 569.2 |
-fast |
909,090.9 | 517.4 |
Sun Studio 12/Sun C 5.9: 10,000,000 loops, with register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 666,666.7 | 379.4 |
-xO1 |
357,142.9 | 203.3 |
-xO2 |
909,090.9 | 517.4 |
-xO3 |
833,333.3 | 474.3 |
-xO4 |
1,000,000 | 569.2 |
-xO5 |
909,090.9 | 517.4 |
-fast |
909,090.9 | 517.4 |
GCC 5.5.0: 20,000 loops, without register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 434,782.6 | 247.5 |
-O1 |
909,090.9 | 517.4 |
-O2 |
1,000,000 | 569.2 |
-O3 |
1,000,000 | 569.2 |
-Ofast |
1,000,000 | 569.2 |
GCC 5.5.0: 20,000 loops, with register variables
Options | Dhrystones/second | VAX MIPS |
---|---|---|
none | 500,000 | 284.6 |
-O1 |
909,090.9 | 517.4 |
-O2 |
1,000,000 | 569.2 |
-O3 |
1,000,000 | 569.2 |
-Ofast |
1,000,000 | 569.2 |