コメントありがとうございました.
C++ ではなく,C で試してみました.
+ sudo-1.6.7p5 のコンパイル時間で比べてみました.
+ make clean を入れて 3 回 make しましたが,時間はほとんど変わりません
でした.
+ Celeron 2.4G は少し遅い感じがして,Pentium4-2.53Gは不思議なくらい
遅いです.
+ Pentium4 以外では gcc 2.95.3 (Vine の RPM) の方が gcc 3.3(.x) より
高速でした.
大体の数字(単位は秒)は,こんな感じです.
P4-2.53 Cel 2.4 AthlonXP 2200+ Athlon 1G
gcc 3.3(.x) 12.3 6.0 3.7 6.4
gcc 2.95.3 17.1 4.0 2.6 4.3
Celeron 2.4G の M/B は BIOSTAR P4SFC (SiS 651), Pentium4-2.53G の
M/B は i845GE で,どちらもオンボードの VGA を使っています.
あと,どちらも PC2700 の DDR SDRAM です.
AthlonXP 2200+ と Athlon1G は AGP のカードです.
ext3 は遅いという話もありましたが,AthlonXP 2200+ も ext3 ですので,
これは違うかな,と思います.
以下は詳細です.
使ったソース
http://www.courtesan.com/sudo/
http://www.courtesan.com/sudo/dist/sudo-1.6.7p5.tar.gz
tar zxf sudo-1.6.7p5.tar.gz
cd sudo-1.6.7p5
./configure
time make
make clean
time make
make clean
time make
P4-2.53G, gcc 3.3
12.300u 0.360s 0:13.24 95.6% 0+0k 0+0io 25259pf+0w
12.220u 0.460s 0:12.70 99.8% 0+0k 0+0io 25259pf+0w
12.200u 0.470s 0:12.74 99.4% 0+0k 0+0io 25259pf+0w
Cel 2.4G, gcc 3.3.2
5.930u 0.470s 0:06.53 98.0% 0+0k 0+0io 25445pf+0w
6.020u 0.400s 0:06.42 100.0% 0+0k 0+0io 25445pf+0w
6.180u 0.250s 0:06.44 99.8% 0+0k 0+0io 25445pf+0w
AthlonXP 2200+ dual, gcc 3.3.1
3.680u 0.470s 0:04.25 97.6% 0+0k 0+0io 25337pf+0w
3.760u 0.440s 0:04.18 100.4% 0+0k 0+0io 25337pf+0w
3.800u 0.390s 0:04.16 100.7% 0+0k 0+0io 25337pf+0w
Athlon 1G, gcc 3.3
6.340u 0.520s 0:09.09 75.4% 0+0k 0+0io 25329pf+0w
6.440u 0.440s 0:08.08 85.1% 0+0k 0+0io 25329pf+0w
6.310u 0.550s 0:07.78 88.1% 0+0k 0+0io 25329pf+0w
P4-2.53G, gcc 2.95.3
17.100u 0.580s 0:17.72 99.7% 0+0k 0+0io 21597pf+0w
17.360u 0.320s 0:17.80 99.3% 0+0k 0+0io 21597pf+0w
17.340u 0.380s 0:17.84 99.3% 0+0k 0+0io 21597pf+0w
Cel 2.4G, gcc 2.95.3
4.010u 0.300s 0:04.31 100.0% 0+0k 0+0io 21688pf+0w
4.100u 0.210s 0:04.31 100.0% 0+0k 0+0io 21688pf+0w
4.020u 0.270s 0:04.31 99.5% 0+0k 0+0io 21688pf+0w
AthlonXP 2200+ dual, gcc 2.95.3
2.590u 0.290s 0:02.88 100.0% 0+0k 0+0io 21688pf+0w
2.560u 0.330s 0:02.89 100.0% 0+0k 0+0io 21688pf+0w
2.450u 0.440s 0:02.89 100.0% 0+0k 0+0io 21688pf+0w
Athlon 1G, gcc 2.95.3
4.300u 0.510s 0:05.49 87.6% 0+0k 0+0io 21688pf+0w
4.380u 0.400s 0:05.70 83.8% 0+0k 0+0io 21688pf+0w
4.300u 0.520s 0:05.77 83.5% 0+0k 0+0io 21688pf+0w
ハードディスクの DMA 転送は hdparm -d で見ると ON になっていました.
dmesg でも次のようになっています.
P4-2.53G
hda: 241254720 sectors (123522 MB) w/1821KiB Cache, CHS=15017/255/63,
UDMA(100)
Cel 2.4G
hda: 12594960 sectors (6449 MB) w/2048KiB Cache, CHS=784/255/63, UDMA(33)
AthlonXP 2200+
hda: 160086528 sectors (81964 MB) w/2048KiB Cache, CHS=9964/255/63,
UDMA(100)
Athlon 1G
hde: 39102336 sectors (20020 MB) w/1024KiB Cache, CHS=38792/16/63, UDMA(100)