450MHz-PentiumII(Xeon, dual) onlxeon[105]_% time spread processed 100 events 0.370u 0.020s 0:00.38 102.6% 0+0k 0+0io 100pf+0w ->3.7msec/event 1GHz-PentiumIII(dual) elecref[104]_% time spread processed 100 events 0.120u 0.000s 0:00.12 100.0% 0+0k 0+0io 94pf+0w ->1.2msec/event 733MHz-PentiumIII(single) onlpcnf.kek.jp[111]_% time ./spread processed 100 events 0.220u 0.020s 0:00.23 104.3% 0+0k 0+0io 99pf+0w ->2.2msec/sevent 2GHz-Pentium4(single) [yasu@harry sp]$ time ./spread processed 100 events real 0m0.097s user 0m0.090s sys 0m0.000s ->0.9msec/event ----------- Compileオプションを変えて2GHz-Pentium4(single)の上で走らせる 1. gcc -O -o spread spread.c -lm real 0m0.051s user 0m0.050s sys 0m0.000s ->0.5msec/event 2. gcc -finline-functions -O -o spread spread.c -lm real 0m0.052s user 0m0.050s sys 0m0.000s 3. gcc -funroll-all-loops -O -o spread spread.c -lm real 0m0.046s user 0m0.050s sys 0m0.000s 4. gcc -O3 -o spread spread.c -lm real 0m0.053s user 0m0.050s sys 0m0.000s 結局のところ、極めてオーソドックスな-Oがよく利きました。 ちなみに、1GHz-PentiumIII(dual)で-Oを付けた場合は elecref[106]_% time ./spread processed 100 events 0.070u 0.000s 0:00.07 100.0% 0+0k 0+0io 91pf+0w ->0.7msec/event であるので、 Pentium4(2GHz)とPentiumIII(1GHz)は P4 : PIII = 0.5 :0.7 = 5 : 7 P4はやはり速くないですね。