web-dev-qa-db-ja.com

ハードディスクのパフォーマンスを確認する方法

ハードドライブのパフォーマンスを確認する方法(端末またはGUIを使用)。書き込み速度。読み取り速度。キャッシュサイズと速度。ランダムな速度。

332
Luis Alvarado

ターミナル方式

hdparmは開始するのに適した場所です。

Sudo hdparm -Tt /dev/sda

/dev/sda:
Timing cached reads:   12540 MB in  2.00 seconds = 6277.67 MB/sec
Timing buffered disk reads: 234 MB in  3.00 seconds =  77.98 MB/sec

Sudo hdparm -v /dev/sdaも情報を提供します。

ddは、書き込み速度に関する情報を提供します。

ドライブにファイルシステムがない場合(およびthenのみ)、of=/dev/sdaを使用します。

それ以外の場合は、/ tmpにマウントして、テスト出力ファイルを書き込んでから削除します。

dd if=/dev/zero of=/tmp/output bs=8k count=10k; rm -f /tmp/output

10240+0 records in
10240+0 records out
83886080 bytes (84 MB) copied, 1.08009 s, 77.7 MB/s

グラフィカルな方法

  1. [システム]-> [管理]-> [ディスクユーティリティ]に移動します。
    • または、gnome-disksを実行してコマンドラインからGnomeディスクユーティリティを起動します
  2. 左ペインでハードディスクを選択します。
  3. 次に、右側のペインの「ベンチマーク–ドライブのパフォーマンスの測定」ボタンをクリックします。
  4. チャートを含む新しいウィンドウが開きます。2つのボタンがあります。 1つは「読み取り専用ベンチマークの開始」用で、もう1つは「読み取り/書き込みベンチマークの開始」用です。誰でもボタンをクリックすると、ハードディスクのベンチマークが開始されます。

test

ディスクI/Oのベンチマーク方法

記事

もっと欲しいものはありますか?

420
Panther

Suominenは正しいです。何らかの同期を使用する必要があります。しかし、もっと簡単な方法があり、conv = fdatasyncが仕事をします:

dd if=/dev/zero of=/tmp/output conv=fdatasync bs=384k count=1k; rm -f /tmp/output
1024+0records in
1024+0 records out
402653184 bytes (403 MB) copied, 3.19232 s, 126 MB/s
97
Tele

/dev/urandomを使用することはお勧めしません。これはソフトウェアベースであり、ブタのように遅いからです。 RAMディスク上のランダムデータのチャンクを取得することをお勧めします。ハードディスクでは、すべてのバイトがそのまま書き込まれるため、ランダムテストは問題になりません(ddを含むssdでも)。ただし、純粋にゼロまたはランダムなデータで重複除去されたzfsプールをテストすると、パフォーマンスに大きな違いがあります。

もう1つの観点は、同期時間を含める必要があります。すべての最新のファイルシステムは、ファイル操作でキャッシュを使用します。

メモリではなくディスク速度を実際に測定するには、ファイルシステムを同期してキャッシュ効果を取り除く必要があります。それは簡単に行うことができます:

time sh -c "dd if=/dev/zero of=testfile bs=100k count=1k && sync"

そのメソッドを使用すると、出力が得られます。

sync ; time sh -c "dd if=/dev/zero of=testfile bs=100k count=1k  && sync" ; rm testfile 
1024+0 records in
1024+0 records out
104857600 bytes (105 MB) copied, 0.270684 s, 387 MB/s

real    0m0.441s
user    0m0.004s
sys 0m0.124s

そのため、ディスクのデータレートはわずか104857600/0.441 = 237772335 B/s-> 237MB/s

これは、キャッシュを使用する場合よりも100MB/s以上低くなります。

楽しいベンチマーク、

49
Pasi Suominen

ディスクの読み書き速度をリアルタイムで監視したい場合は、 iotop ツールを使用できます。

これは、特定のアプリケーションまたはタスクに対してディスクがどのように実行されるかについての正確な情報を取得するのに役立ちます。出力には、プロセスごとの読み取り/書き込み速度と、サーバーの合計読み取り/書き込み速度が表示されます。これはtopとほぼ同じです。

Iotopをインストールするには:

Sudo apt-get install iotop  

実行するには:

Sudo iotop
35
Lars

bonnie ++は、Linuxで知っている究極のベンチマークユーティリティです。

(現在、Windowsベースのマシンでテストするために、bonnie ++を使用したLinux LiveCDを準備しています!)

キャッシュ、同期、ランダムデータ、ディスク上のランダムな場所、小さなサイズの更新、大きな更新、読み取り、書き込みなどを処理します。USBキー、ハードディスク(回転式)、ソリッドステートドライブ、およびRAMベースの比較ファイルシステムは初心者にとって非常に有益です。

Ubuntuに含まれているかどうかはわかりませんが、ソースから簡単にコンパイルできます。

http://www.coker.com.au/bonnie++/

25
Corto

書き込み速度

$ dd if=/dev/zero of=./largefile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.82364 s, 223 MB/s

ブロックサイズは実際には非常に大きいです。 64kや4kなどの小さいサイズで試すことができます。


読み取り速度

次のコマンドを実行して、メモリキャッシュをクリアします

$ Sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"

書き込みテストで作成されたファイルを読み取ります。

$ dd if=./largefile of=/dev/null bs=4k
165118+0 records in
165118+0 records out
676323328 bytes (676 MB) copied, 3.0114 s, 225 MB/s
22
Limon Monte

bonnie ++の使用方法に関するヒント

bonnie++ -d [TEST_LOCATION] -s [TEST_SIZE] -n 0 -m [TEST_NAME] -f -b -u [TEST_USER] 
bonnie++ -d /tmp -s 4G -n 0 -m TEST -f -b -u james

SIMPLE BONNIE ++ Example でもう少し。

14
nyxee

f3-フラ​​ッシュ詐欺との戦い

整合性をチェックし、偽のフラッシュドライブを検出し、パフォーマンスをテストします。3つすべてを一度に実行します。

この回答 の詳細。

1
Pablo Bianchi