2023/01/18(水) [n年前の日記]
#1 [linux] ノートPC上でベンチマークを取ってみた
お袋さん用の旧ノートPC FUJITSU LIFEBOOK AH33/J FMVA33JW1 + Ubuntu Linux 22.04 LTS x64 と、Gateway M-2408j + Linux Mint 21.1 x64 を比較すると、Gateway M-2408j のほうがハードウェアスペックは低いはずなのに、LIFEBOOK AH33/J のほうが起動その他が遅い。おかしい。ベンチマークを取って現状を確認したい。
◎ ハードウェアスペックについて :
Gateway M-2408j のスペックは以下。
FUJITSU LIFEBOOK AH33/J FMVA33JW1 のスペックは以下。
巷のベンチマーク結果を眺めると、Athlon64 X2 QL-60 より Celeon B820 のほうが 1.5倍ぐらい速いらしいのだけど。しかし、体感では逆。なんでだろ。
- OS: Linux Mint 21.1 x86_64, Kernel 5.15.0-58-generic
- CPU: AMD Athlon X2 QL-60 (2) @ 1.900GHz
- GPU: AMD ATI Mobility Radeon HD 3200
- Memory: 615MiB / 1722MiB (1GB x 2, DDR2-667/PC2-5300, Dual channel)
- HDD: HGST HTS542525K9SA00 (Travelstar 5K250, 250GB, 5400rpm, Cache 8MB, Serial ATA150, 9.5 mm)
FUJITSU LIFEBOOK AH33/J FMVA33JW1 のスペックは以下。
- OS: Ubuntu 22.04.1 LTS x86_64, Kernel: 5.15.0-58-generic
- CPU: Intel Celeron B820 (2) @ 1.700GHz
- GPU: Intel 2nd Generation Core Processor Family
- Memory: 684MiB / 5818MiB (2GB + 6GB, DDR3-1333/PC3-10600, Single channel)
- HDD: Seagate ST320LT020-9YG142 (320GB, 5400rpm, SATA300, Cache 16MB, 7mm)
巷のベンチマーク結果を眺めると、Athlon64 X2 QL-60 より Celeon B820 のほうが 1.5倍ぐらい速いらしいのだけど。しかし、体感では逆。なんでだろ。
◎ ベンチマークソフトについて :
Ubuntu Linux には sysbench というパッケージがあるらしいのでソレを使って測定してみる。あるいは、hdparm を使ってHDD速度を調べてみる。
_sysbench で CPU /メモリ/ディスクのパフォーマンスを計測する。 - たぐたぐ.com (WebArchive)
_CPUやメモリなどのシステム性能を比較するベンチマークツール 2ページ | OSDN Magazine
_LinuxでSSD/HDDのアクセス速度を確認する"hdparm -tT" - 情報技術の四方山話
_Linux でディスクアクセス速度を測定する - Marginalia
_HDDの情報を調べる - Wikiducca
_sysbench で CPU /メモリ/ディスクのパフォーマンスを計測する。 - たぐたぐ.com (WebArchive)
_CPUやメモリなどのシステム性能を比較するベンチマークツール 2ページ | OSDN Magazine
_LinuxでSSD/HDDのアクセス速度を確認する"hdparm -tT" - 情報技術の四方山話
_Linux でディスクアクセス速度を測定する - Marginalia
_HDDの情報を調べる - Wikiducca
sudo apt install sysbench sudo apt install hdparm
◎ CPUを測定 :
sysbench --test=cpu run と打てば、CPUの性能について調べることができるらしい。実行すると非推奨のオプションがどうとか表示されるあたりがが気になるけれど、そのあたりの解説記事が見つからないので、そのまま実行してみる。
Gateway M-2408j 上で実行。
LIFEBOOK AH33/J 上で実行。
どこを見ればいいのか分からんけど…。たぶん、「CPU speed」「events per second」のあたりを見ればいいのかな。1秒間にどれだけ処理できたか、ということだろうし。
おそらく Celeron B820 のほうが速いのだろう。つまり、CPUは、ちゃんと LIFEBOOK AH33/J のほうが速い。たぶん。
Gateway M-2408j 上で実行。
$ sysbench --test=cpu run WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options. sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Prime numbers limit: 10000 Initializing worker threads... Threads started! CPU speed: events per second: 214.20 General statistics: total time: 10.0003s total number of events: 2143 Latency (ms): min: 4.61 avg: 4.66 max: 15.13 95th percentile: 4.74 sum: 9992.38 Threads fairness: events (avg/stddev): 2143.0000/0.00 execution time (avg/stddev): 9.9924/0.00
LIFEBOOK AH33/J 上で実行。
$ sysbench --test=cpu run WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options. sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Prime numbers limit: 10000 Initializing worker threads... Threads started! CPU speed: events per second: 514.70 General statistics: total time: 10.0009s total number of events: 5150 Latency (ms): min: 1.94 avg: 1.94 max: 2.74 95th percentile: 1.96 sum: 9999.07 Threads fairness: events (avg/stddev): 5150.0000/0.00 execution time (avg/stddev): 9.9991/0.00
どこを見ればいいのか分からんけど…。たぶん、「CPU speed」「events per second」のあたりを見ればいいのかな。1秒間にどれだけ処理できたか、ということだろうし。
- M-2408j (Athlon64 x2 QL-60) は、214.20。
- LIFEBOOK AH33/J (Celeron B820) は、514.70。
おそらく Celeron B820 のほうが速いのだろう。つまり、CPUは、ちゃんと LIFEBOOK AH33/J のほうが速い。たぶん。
◎ メモリを測定。 :
sysbench --test=memory run と打てば、メモリの速度を測定できるらしい。
M-2408j を測定。
LIFEBOOK AH33/J を測定。
これまたどこを見ればいいのかわからんけど…。MiB/sec と書かれてるあたりを見ればいいのだろうか。1秒間に何MB転送できたか、という値なのだろう。たぶん。
これもまた、LIFEBOOK AH33/J のほうが速い。しかも桁違いに速い。シングルチャネルだから遅いのかなと疑っていたけれど、DDR2 と DDR3 の違いのほうが大きいのだろうか。クロックが全然違うもんな…。
M-2408j を測定。
$ sysbench --test=memory run WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options. sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Running memory speed test with the following options: block size: 1KiB total size: 102400MiB operation: write scope: global Initializing worker threads... Threads started! Total operations: 2094157 (209318.02 per second) 2045.08 MiB transferred (204.41 MiB/sec) General statistics: total time: 10.0002s total number of events: 2094157 Latency (ms): min: 0.00 avg: 0.00 max: 0.41 95th percentile: 0.00 sum: 3430.46 Threads fairness: events (avg/stddev): 2094157.0000/0.00 execution time (avg/stddev): 3.4305/0.00
LIFEBOOK AH33/J を測定。
$ sysbench --test=memory run WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options. sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Running memory speed test with the following options: block size: 1KiB total size: 102400MiB operation: write scope: global Initializing worker threads... Threads started! Total operations: 24866139 (2485276.02 per second) 24283.34 MiB transferred (2427.03 MiB/sec) General statistics: total time: 10.0001s total number of events: 24866139 Latency (ms): min: 0.00 avg: 0.00 max: 0.96 95th percentile: 0.00 sum: 4299.46 Threads fairness: events (avg/stddev): 24866139.0000/0.00 execution time (avg/stddev): 4.2995/0.00
これまたどこを見ればいいのかわからんけど…。MiB/sec と書かれてるあたりを見ればいいのだろうか。1秒間に何MB転送できたか、という値なのだろう。たぶん。
- M-2408j (1GB x 2, DDR2-667/PC2-5300, Dual channel) は、204.41 MiB/sec。
- LIFEBOOK AH33/J (2GB + 6GB, DDR3-1333/PC3-10600, Single channel) は、2427.03 MiB/sec。
これもまた、LIFEBOOK AH33/J のほうが速い。しかも桁違いに速い。シングルチャネルだから遅いのかなと疑っていたけれど、DDR2 と DDR3 の違いのほうが大きいのだろうか。クロックが全然違うもんな…。
◎ File I/Oを測定。 :
File I/O も sysbench で調べられるけど、書き込みはともかく読み込みも調べる場合は、テスト用のファイルを作っておく必要がある。大量のファイルが作られてしまうから、作業用のディレクトリを作成して、その中にテスト用ファイルを作ったほうがいいらしい。
なので、おおよそ以下を打ち込むことになる模様。
M-2408j を測定。
LIFEBOOK AH33/J を測定。
これまたどこを見ればいいのかわからんのだけど…。「Throughput」のところで、MiB/S という単位が出てるから、そこが1秒間あたりに何MB転送できたか、という値なのだろう。たぶん。
これもまた、LIFEBOOK AH33/J のほうが速い。HDDだから、CPUやメモリほど全然違う差が出るわけではないけれど、それでも速い。
ついでに、hdparm でHDDの速度測定をしてみた。
M-2408j を測定。
LIFEBOOK AH33/J を測定。
やはり、LIFEBOOK AH33/J のほうが速い。
なので、おおよそ以下を打ち込むことになる模様。
$ mkdir temp $ cd temp $ sysbench --test=fileio --file-total-size=1G prepare $ sysbench --test=fileio --file-total-size=1G --file-test-mode=rndrw run $ sysbench --test=fileio --file-total-size=1G cleanup
- mkdir で作業用ディレクトリを作成して、
- cd でそのディレクトリに入って、
- 最初の sysbench でテスト用ファイルを作成、
- 2つ目の sysybench で測定、
- 3つ目の sysbench でテスト用ファイルを削除する。
M-2408j を測定。
$ sysbench --test=fileio --file-total-size=1G --file-test-mode=rndrw run WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options. sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Extra file open flags: (none) 128 files, 8MiB each 1GiB total file size Block size 16KiB Number of IO requests: 0 Read/Write ratio for combined random IO test: 1.50 Periodic FSYNC enabled, calling fsync() each 100 requests. Calling fsync() at the end of test, Enabled. Using synchronous I/O mode Doing random r/w test Initializing worker threads... Threads started! File operations: reads/s: 81.14 writes/s: 54.09 fsyncs/s: 173.19 Throughput: read, MiB/s: 1.27 written, MiB/s: 0.85 General statistics: total time: 10.3492s total number of events: 3065 Latency (ms): min: 0.02 avg: 3.26 max: 62.78 95th percentile: 13.70 sum: 9983.93 Threads fairness: events (avg/stddev): 3065.0000/0.00 execution time (avg/stddev): 9.9839/0.00
LIFEBOOK AH33/J を測定。
$ sysbench --test=fileio --file-total-size=1G --file-test-mode=rndrw run WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options. sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Extra file open flags: (none) 128 files, 8MiB each 1GiB total file size Block size 16KiB Number of IO requests: 0 Read/Write ratio for combined random IO test: 1.50 Periodic FSYNC enabled, calling fsync() each 100 requests. Calling fsync() at the end of test, Enabled. Using synchronous I/O mode Doing random r/w test Initializing worker threads... Threads started! File operations: reads/s: 123.62 writes/s: 82.41 fsyncs/s: 269.99 Throughput: read, MiB/s: 1.93 written, MiB/s: 1.29 General statistics: total time: 10.1884s total number of events: 4724 Latency (ms): min: 0.00 avg: 2.12 max: 127.80 95th percentile: 13.46 sum: 9992.38 Threads fairness: events (avg/stddev): 4724.0000/0.00 execution time (avg/stddev): 9.9924/0.00
これまたどこを見ればいいのかわからんのだけど…。「Throughput」のところで、MiB/S という単位が出てるから、そこが1秒間あたりに何MB転送できたか、という値なのだろう。たぶん。
- M-2408j (HGST HTS542525K9SA00, 250GB, 5400rpm, SATA150, Cache 8MB) は、read 1.27 MiB/s, write 0.85 MiB/S。
- LIFEBOOK AH33/J (Seagate ST320LT020-9YG142, 320GB, 5400rpm, SATA300, Cache 16MB) は、read 1.93 MiB/s, write 1.29 MiB/s。
これもまた、LIFEBOOK AH33/J のほうが速い。HDDだから、CPUやメモリほど全然違う差が出るわけではないけれど、それでも速い。
ついでに、hdparm でHDDの速度測定をしてみた。
M-2408j を測定。
$ sudo hdparm -tT /dev/sda /dev/sda: Timing cached reads: 1612 MB in 2.00 seconds = 805.62 MB/sec Timing buffered disk reads: 172 MB in 3.01 seconds = 57.08 MB/sec
LIFEBOOK AH33/J を測定。
$ sudo hdparm -tT /dev/sda /dev/sda: Timing cached reads: 5262 MB in 2.00 seconds = 2637.05 MB/sec Timing buffered disk reads: 248 MB in 3.01 seconds = 82.35 MB/sec
- M-2408j は、57.08 MB/sec。
- LIFEBOOK AH33/J は、82.35 MB/sec。
やはり、LIFEBOOK AH33/J のほうが速い。
◎ 結論。 :
ハードウェアスペック通りに、M-2408j より LIFEBOOK AH33/J のほうが、ベンチマーク上では速いことが分かった。
でも、LIFEBOOK AH33/J のほうが起動が遅い…。
でも、LIFEBOOK AH33/J のほうが起動が遅い…。
- M-2408j は、grub表示画面が消えてから LightDM が表示されるまで、1分ぐらいで起動する。
- LIFEBOOK AH33/J は 3分6秒〜2分10秒ぐらいかかる。
◎ 余談。 :
消費電力は結構違いがある。ACアダプタ駆動で、ワットチェッカーを使って測ってみたけど…。
- M-2408j は、アイドル状態で66W。何か処理をさせても66Wで変わらない。
- LIFEBOOK AH33/J は、アイドル状態で7〜13W。何か処理をさせると20Wぐらいになる。
[ ツッコむ ]
以上です。