Hyper-Threading Speeds Linux
Single-user application workload
The AIM9 benchmark is a single user workload designed to measure the performance of hardware and operating systems. The results are shown in Table 2. Most of the tests in the benchmark performed identically in Hyper-Threading and non-Hyper-Threading, except for the sync file operations and Integer Sieves. The three operations, Sync Random Disk Writes, Sync Sequential Disk Writes, and Sync Disk Copies, are approximately 35% slower in Hyper-Threading. On the other hand, Hyper-Threading provided a 60% improvement over non-Hyper-Threading in the case of Integer Sieves.
Table 2. Effects of Hyper-Threading on AIM9 workload
2419s-noht | 2419s-ht | Speed-up | ||
add_double | Thousand Double Precision Additions per second | 638361 | 637724 | 0% |
add_float | Thousand Single Precision Additions per second | 638400 | 637762 | 0% |
add_long | Thousand Long Integer Additions per second | 1479041 | 1479041 | 0% |
add_int | Thousand Integer Additions per second | 1483549 | 1491017 | 1% |
add_short | Thousand Short Integer Additions per second | 1480800 | 1478400 | 0% |
creat-clo | File Creations and Closes per second | 129100 | 139700 | 8% |
page_test | System Allocations & Pages per second | 161330 | 161840 | 0% |
brk_test | System Memory Allocations per second | 633466 | 635800 | 0% |
jmp_test | Non-local gotos per second | 8666900 | 8694800 | 0% |
signal_test | Signal Traps per second | 142300 | 142900 | 0% |
exec_test | Program Loads per second | 387 | 387 | 0% |
fork_test | Task Creations per second | 2365 | 2447 | 3% |
link_test | Link/Unlink Pairs per second | 54142 | 59169 | 9% |
disk_rr | Random Disk Reads (K) per second | 85758 | 89510 | 4% |
disk_rw | Random Disk Writes (K) per second | 76800 | 78455 | 2% |
disk_rd | Sequential Disk Reads (K) per second | 351904 | 356864 | 1% |
disk_wrt | Sequential Disk Writes (K) per second | 154112 | 156359 | 1% |
disk_cp | Disk Copies (K) per second | 104343 | 106283 | 2% |
sync_disk_rw | Sync Random Disk Writes (K) per second | 239 | 155 | -35% |
sync_disk_wrt | Sync Sequential Disk Writes (K) per second | 97 | 60 | -38% |
sync_disk_cp | Sync Disk Copies (K) per second | 97 | 60 | -38% |
disk_src | Directory Searches per second | 48915 | 48195 | -1% |
div_double | Thousand Double Precision Divides per second | 37162 | 37202 | 0% |
div_float | Thousand Single Precision Divides per second | 37125 | 37202 | 0% |
div_long | Thousand Long Integer Divides per second | 27305 | 27360 | 0% |
div_int | Thousand Integer Divides per second | 27305 | 27332 | 0% |
div_short | Thousand Short Integer Divides per second | 27305 | 27360 | 0% |
fun_cal | Function Calls (no arguments) per second | 30331268 | 30105600 | -1% |
fun_cal1 | Function Calls (1 argument) per second | 112435200 | 112844800 | 0% |
fun_cal2 | Function Calls (2 arguments) per second | 97587200 | 97843200 | 0% |
fun_cal15 | Function Calls (15 arguments) per second | 44748800 | 44800000 | 0% |
sieve | Integer Sieves per second | 15 | 24 | 60% |
mul_double | Thousand Double Precision Multiplies per second | 456287 | 456743 | 0% |
mul_float | Thousand Single Precision Multiplies per second | 456000 | 456743 | 0% |
mul_long | Thousand Long Integer Multiplies per second | 167904 | 168168 | 0% |
mul_int | Thousand Integer Multiplies per second | 167976 | 168216 | 0% |
mul_short | Thousand Short Integer Multiplies per second | 155730 | 155910 | 0% |
num_rtns_1 | Numeric Functions per second | 92740 | 92920 | 0% |
trig_rtns | Trigonometric Functions per second | 404000 | 405000 | 0% |
matrix_rtns | Point Transformations per second | 875140 | 891300 | 2% |
array_rtns | Linear Systems Solved per second | 579 | 578 | 0% |
string_rtns | String Manipulations per second | 2560 | 2564 | 0% |
mem_rtns_1 | Dynamic Memory Operations per second | 982035 | 980019 | 0% |
mem_rtns_2 | Block Memory Operations per second | 214590 | 215390 | 0% |
sort_rtns_1 | Sort Operations per second | 481 | 472 | -2% |
misc_rtns_1 | Auxiliary Loops per second | 7916 | 7864 | -1% |
dir_rtns_1 | Directory Operations per second | 2002000 | 2001000 | 0% |
shell_rtns_1 | Shell Scripts per second | 95 | 97 | 2% |
shell_rtns_2 | Shell Scripts per second | 95 | 96 | 1% |
shell_rtns_3 | Shell Scripts per second | 95 | 97 | 2% |
series_1 | Series Evaluations per second | 3165270 | 3189630 | 1% |
shared_memory | Shared Memory Operations per second | 174080 | 174220 | 0% |
tcp_test | TCP/IP Messages per second | 65835 | 66231 | 1% |
udp_test | UDP/IP DataGrams per second | 111880 | 112150 | 0% |
fifo_test | FIFO Messages per second | 228920 | 228900 | 0% |
stream_pipe | Stream Pipe Messages per second | 170210 | 171060 | 0% |
dgram_pipe | DataGram Pipe Messages per second | 168310 | 170560 | 1% |
pipe_cpy | Pipe Messages per second | 245090 | 243440 | -1% |
ram_copy | Memory to Memory Copy per second | 490026708 | 492478668 | 1% |
View Hyper-Threading Speeds Linux Discussion
Page: 1 2 3 4 5 6 7 8 9 10 Next Page: Multithreaded application workloadFirst published by IBM developerWorks