For mem.c er det nesten ingen effekt av hyperthreading:
group100@os100:~$ for i in 0 48; do time taskset -c $i ./a.out & done
group100@os100:~$
Real:1.262 User:1.261 System:0.000 99.88%
Real:1.264 User:1.261 System:0.000 99.78%
group100@os100:~$ for i in 0 49; do time taskset -c $i ./a.out & done
group100@os100:~$
Real:0.643 User:0.639 System:0.000 99.33%
Real:0.643 User:0.643 System:0.000 100.00%
For regnejobben er det overraskende god effekt:
group100@os100:~$ for i in 0 48; do time taskset -c $i ./a.out & done
group100@os100:~$
SUm: 0.000000Real:10.468 User:10.463 System:0.004 99.98%
SUm: 0.000000Real:10.472 User:10.464 System:0.004 99.97%
group100@os100:~$ for i in 0 49; do time taskset -c $i ./a.out & done
group100@os100:~$
SUm: 0.000000Real:10.427 User:10.426 System:0.000 100.00%
SUm: 0.000000Real:10.433 User:10.431 System:0.000 99.99%
Dette viser at det går nesten like raskt på en enkelt hyperthreading CPU som på to uavhengige. Det kan se ut som om den hyperthreading CPUen klarer å få gjort denne beregningen helt parallellt.