- PR -

Pentium4 3.4GhzでTurboLinux10Desktopが遅い

投稿者投稿内容
kei
ベテラン
会議室デビュー日: 2005/03/18
投稿数: 53
投稿日時: 2005-04-20 13:42
unibon様
ご返答ありがとうございます。

perlでの計算処理についてですが、計算経過の画面表示処理は行っておりません。
ですので、表示等のI/Oが遅いというわけでは無いように思っています。

不要そうなデーモンはkillしていて、変なプロセスが走っているということでも
なさそうな感じです。

PCには余計な機器は増設しておらず、買ったままの状態です。

以下のソースをコンパイルし、処理時間を計測したところ、
IBM ThinkCentreS50:12.8second
EPSON Endeavor AT-200:19.5second
という結果でした。

---source---
#include <stdio.h>

main()
{
int i,j;

for(i=0;i<100000;i++)
{
for(j=0;j<100000;j++)
{
;
}
;
}
return;
}
---end---
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2005-04-21 02:05
CPUのコアの種別がわからないので...
Northwood と Prescott だとすると、こういう極端なプログラムの
場合には大差がついたりするんじゃないかなあと思いますが、
いかがなもんでしょ。
# そう思ってみると、パイプラインの段数くらいの比に
# なってるような...
anights
ぬし
会議室デビュー日: 2003/05/22
投稿数: 277
お住まい・勤務地: 東京
投稿日時: 2005-04-21 13:23
引用:

ぽんすさんの書き込み (2005-04-21 02:05) より:
CPUのコアの種別がわからないので...
Northwood と Prescott だとすると、こういう極端なプログラムの



/proc/cpuinfoのflagsにpniとかあるので
コアはぼんすさんの指摘通りだと思いますよ。
kei
ベテラン
会議室デビュー日: 2005/03/18
投稿数: 53
投稿日時: 2005-05-12 09:49
keiです。
ベンチマークプログラム(unixbench-4.1.0)を試してみました。
結果は以下の通りで、かなりの差が発生しています。
これで何か原因特定出来そうでしょうか?

unixbench-4.1.0の所在は以下URLです。
http://www.tux.org/pub/tux/benchmarks/System/unixbench/

IBM ThinkCentre S50
-------------------

BYTE UNIX Benchmarks (Version 4.1.0)
System -- Linux sstsv2 2.6.0-test5_2 #1 Sun Sep 28 14:23:53 JST 2003 i686 unknown
Start Benchmark Run: 2005年 5月 11日 水曜日 17:23:11 JST
4 interactive users.
17:23:11 up 19 days, 1:52, 4 users, load average: 0.07, 0.03, 0.03
lrwxrwxrwx 1 root root 4 9月 9 2004 /bin/sh -> bash
/bin/sh: symbolic link to `bash'
/dev/hda7 14555392 7714540 6101464 56% /
Dhrystone 2 using register variables 3453005.1 lps (10.0 secs, 10 samples)
Double-Precision Whetstone 910.7 MWIPS (10.6 secs, 10 samples)
System Call Overhead 390858.8 lps (10.0 secs, 10 samples)
Pipe Throughput 605053.8 lps (10.0 secs, 10 samples)
Pipe-based Context Switching 197487.8 lps (10.0 secs, 10 samples)
Process Creation 11184.0 lps (30.0 secs, 3 samples)
Execl Throughput 2708.0 lps (29.7 secs, 3 samples)
File Read 1024 bufsize 2000 maxblocks 1043980.0 KBps (30.0 secs, 3 samples)
File Write 1024 bufsize 2000 maxblocks 713580.0 KBps (30.0 secs, 3 samples)
File Copy 1024 bufsize 2000 maxblocks 449314.0 KBps (30.0 secs, 3 samples)
File Read 256 bufsize 500 maxblocks 367530.0 KBps (30.0 secs, 3 samples)
File Write 256 bufsize 500 maxblocks 341664.0 KBps (30.0 secs, 3 samples)
File Copy 256 bufsize 500 maxblocks 143794.0 KBps (30.0 secs, 3 samples)
File Read 4096 bufsize 8000 maxblocks 1399230.0 KBps (30.0 secs, 3 samples)
File Write 4096 bufsize 8000 maxblocks 515279.0 KBps (30.0 secs, 3 samples)
File Copy 4096 bufsize 8000 maxblocks 448026.0 KBps (30.0 secs, 3 samples)
Shell Scripts (1 concurrent) 180.3 lpm (60.0 secs, 3 samples)
Shell Scripts (8 concurrent) 27.0 lpm (60.0 secs, 3 samples)
Shell Scripts (16 concurrent) 35.0 lpm (60.0 secs, 3 samples)
Arithmetic Test (type = short) 370124.1 lps (10.0 secs, 3 samples)
Arithmetic Test (type = int) 460645.0 lps (10.0 secs, 3 samples)
Arithmetic Test (type = long) 462791.8 lps (10.0 secs, 3 samples)
Arithmetic Test (type = float) 417987.0 lps (10.0 secs, 3 samples)
Arithmetic Test (type = double) 476612.5 lps (10.0 secs, 3 samples)
Arithoh 10322045.8 lps (10.0 secs, 3 samples)
C Compiler Throughput 539.8 lpm (60.0 secs, 3 samples)
Dc: sqrt(2) to 99 decimal places 147829.4 lpm (30.0 secs, 3 samples)
Recursion Test--Tower of Hanoi 115606.2 lps (20.0 secs, 3 samples)


INDEX VALUES
TEST BASELINE RESULT INDEX

Dhrystone 2 using register variables 116700.0 3453005.1 295.9
Double-Precision Whetstone 55.0 910.7 165.6
Execl Throughput 43.0 2708.0 629.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 449314.0 1134.6
File Copy 256 bufsize 500 maxblocks 1655.0 143794.0 868.8
File Copy 4096 bufsize 8000 maxblocks 5800.0 448026.0 772.5
Pipe Throughput 12440.0 605053.8 486.4
Pipe-based Context Switching 4000.0 197487.8 493.7
Process Creation 126.0 11184.0 887.6
Shell Scripts (8 concurrent) 6.0 27.0 45.0
System Call Overhead 15000.0 390858.8 260.6
=========
FINAL SCORE 412.4


EPSON AT-200
------------------------------------

BYTE UNIX Benchmarks (Version 4.1.0)
System -- Linux sstsv4.kddi.com 2.6.0-test5_2 #1 Sun Sep 28 14:23:53 JST 2003 i686 unknown
Start Benchmark Run: 2005年 5月 11日 水曜日 17:30:22 JST
3 interactive users.
17:30:22 up 8:00, 3 users, load average: 0.85, 0.35, 0.13
lrwxrwxrwx 1 root root 4 5月 11 01:29 /bin/sh -> bash
/bin/sh: symbolic link to `bash'
/dev/hda6 73291064 4297344 65270660 7% /
Dhrystone 2 using register variables 236927.7 lps (10.0 secs, 10 samples)
Double-Precision Whetstone 157.5 MWIPS (9.9 secs, 10 samples)
System Call Overhead 201726.4 lps (10.0 secs, 10 samples)
Pipe Throughput 375604.0 lps (10.0 secs, 10 samples)
Pipe-based Context Switching 132169.5 lps (10.0 secs, 10 samples)
Process Creation 5611.5 lps (30.0 secs, 3 samples)
Execl Throughput 177.1 lps (29.8 secs, 3 samples)
File Read 1024 bufsize 2000 maxblocks 639674.0 KBps (30.0 secs, 3 samples)
File Write 1024 bufsize 2000 maxblocks 570555.0 KBps (30.0 secs, 3 samples)
File Copy 1024 bufsize 2000 maxblocks 289708.0 KBps (30.0 secs, 3 samples)
File Read 256 bufsize 500 maxblocks 92385.0 KBps (30.0 secs, 3 samples)
File Write 256 bufsize 500 maxblocks 76151.0 KBps (30.0 secs, 3 samples)
File Copy 256 bufsize 500 maxblocks 44626.0 KBps (30.0 secs, 3 samples)
File Read 4096 bufsize 8000 maxblocks 1434959.0 KBps (30.0 secs, 3 samples)
File Write 4096 bufsize 8000 maxblocks 1047199.0 KBps (30.0 secs, 3 samples)
File Copy 4096 bufsize 8000 maxblocks 600514.0 KBps (30.0 secs, 3 samples)
Shell Scripts (1 concurrent) 8.7 lpm (60.0 secs, 3 samples)
Shell Scripts (8 concurrent) 1.0 lpm (40.0 secs, 3 samples)
Shell Scripts (16 concurrent) 1.0 lpm (0.0 secs, 3 samples)
Arithmetic Test (type = short) 122970.9 lps (10.3 secs, 3 samples)
Arithmetic Test (type = int) 790210.3 lps (10.0 secs, 3 samples)
Arithmetic Test (type = long) 676338.1 lps (10.0 secs, 3 samples)
Arithmetic Test (type = float) 273242.6 lps (10.0 secs, 3 samples)
Arithmetic Test (type = double) 276493.1 lps (10.0 secs, 3 samples)
Arithoh 16209495.7 lps (10.0 secs, 3 samples)
C Compiler Throughput 33.0 lpm (60.0 secs, 3 samples)
Dc: sqrt(2) to 99 decimal places 8305.3 lpm (30.0 secs, 3 samples)
Recursion Test--Tower of Hanoi 4329.4 lps (20.0 secs, 3 samples)


INDEX VALUES
TEST BASELINE RESULT INDEX

Dhrystone 2 using register variables 116700.0 236927.7 20.3
Double-Precision Whetstone 55.0 157.5 28.6
Execl Throughput 43.0 177.1 41.2
File Copy 1024 bufsize 2000 maxblocks 3960.0 289708.0 731.6
File Copy 256 bufsize 500 maxblocks 1655.0 44626.0 269.6
File Copy 4096 bufsize 8000 maxblocks 5800.0 600514.0 1035.4
Pipe Throughput 12440.0 375604.0 301.9
Pipe-based Context Switching 4000.0 132169.5 330.4
Process Creation 126.0 5611.5 445.4
Shell Scripts (8 concurrent) 6.0 1.0 1.7
System Call Overhead 15000.0 201726.4 134.5
=========
FINAL SCORE 115.5



[ メッセージ編集済み 編集者: kei 編集日時 2005-05-12 10:09 ]
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2005-05-12 17:33
ベンチマークの内容をみてないのでなんですが...
# たとえば「Execl Throughput」って具体的にはどういうコードで
# 測ってるの?とか。

下のほうはずいぶんロードアベレージが高いですが、これで測定条件は
問題ないですか?気になります。
追記。
ひょっとして、処理が遅いからロードアベレージが高くなってるのかしら?

仮に測定条件に問題がなかったとすると...

Dhrystone、Whetstone ともに極端な差があるのが気になります。
コンパイラは同じですか?
同じコンパイラ・同じオプション・同じターゲットでコンパイルして
いるのだとすると、この数字を信じればCPUがまともに動いていない、
ということになりそうですが。

ディスクについては、バッファサイズ4096ではほぼ同じ性能なので
ディスクそのものの性能には問題は無さそうです。
256では大きな違いになっていますが、これはRead/Writeを一回やるごとに
時間がかかっているためでしょう。システムコールが遅いとみるべきか、
ドライバ等の問題とみるべきか?
I/Oに時間がかかるのはCPUが遅い結果じゃないかなあ...

[ メッセージ編集済み 編集者: ぽんす 編集日時 2005-05-12 20:31 ]
kei
ベテラン
会議室デビュー日: 2005/03/18
投稿数: 53
投稿日時: 2005-05-13 13:25
ぽんす様
ご返信ありがとうございます。

「Execl Throughput」の具体的なコードについては、私も
詳しく理解しておりません。すみません。

測定条件ですが、問題はないと思っています。

/proc/versionのデータはいづれも
Linux version 2.6.0-test5_2(gcc version 3.3.1)です。

主なマシンの相違点としては、
IBMマシン HT Pen4 3.2GHz 865G チップセット
EPSONマシン HT Pen4 3.4GHz 865GV チップセット
ぐらいです。

双方でWINDOWS-XPを立ち上げてベンチマークプログラムを
動かした結果は殆ど変わりませんでした。
Linuxになると、EPSONがえらく遅くなってしまいます。

IBMのPen4 3.4GHz 865GVチップセットマシンにLinuxを入れた
場合も、もしかしたら同じ結果になってしまうのでしょうか?

怖くてThinkCentre S50 UltraSmallが買えずにいます。
ぽんす
ぬし
会議室デビュー日: 2003/05/21
投稿数: 1023
投稿日時: 2005-05-13 22:13
ふ〜む、Windows では差がないですかあ。
ハードウェアに問題はないとは言い切れませんが、その線は薄そうですねえ。
もうあまり思いつくこともないのですが...

1) 他のディストリビューションではどうなのか?

2) サポートに問い合わせをかけられないか?

といったところでしょうか。
あと、わりと興味本位ですが、

/*** hello.c ***/
#include <stdio.h>
int main()
{
printf("hello, world!\n");
return 0;
}

とか書いて、
gcc -s -O2 -o hello hello.c
でもって、
strace -c ./hello
とやって比べるとどうなんだろなあ、とか思います。

スキルアップ/キャリアアップ(JOB@IT)