Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxについて >> DDコマンドを使用してLinuxディスクのパフォーマンスをテストする方法

DDコマンドを使用してLinuxディスクのパフォーマンスをテストする方法

  

LinuxでのDDコマンドは一般的に使用されているコマンドの1つであり、DDコマンドも広く使用されています。ファイルをコピーするための既知のDDコマンドに加えて、DDコマンドを使用してディスクのパフォーマンスをテストすることもできます。それでは、DDコマンドを使用してLinuxディスクのパフォーマンスをどのようにテストしますか。

ここで彼の違いを見て、いくつかの一般的なDD直接コマンドです:の

DD BS = 64Kカウント= 4Kの場合=は/dev /ゼロ=テスト

dd bs = 64kカウント= 4k if = /dev /zero of = test; sync

dd bs = 64kカウント= 4k if = /dev /zero of test conv = fdatasync

dd bs = 64kカウント= 4k if = /dev /zero of = test oflag = dsync

これら4つのDDコマンドの違いは、書き込みキャッシュがメモリ内で処理される方法です。 Dd bs = 64 kカウント= 4 k if = /dev /zero of = test

パラメータは追加されていませんddのデフォルトモードには、 "sync"(sync)コマンドは含まれていません。つまり、ddコマンドを実行しても、ファイルが完成する前に実際にファイルがディスクに書き込まれることはありませんでした。したがって、上記のコマンドは単純に128MBのデータをメモリバッファ(書き込みキャッシュ)に読み込みます。だからあなたが得るものは超高速スピードになります。実際、ddは読み取り速度しか与えないため、ddが終了するまで、システムは実際にデータをディスクに書き込み始めますが、速度はわかりません。したがって、この速度が速い場合は効果がありません。

実際の結果:

268435456バイト(268 MB)コピー、1.3529秒、198 MB /s

2.dd bs = 64k count = 4k if = /dev /zero of = test; sync

は、前の1とまったく同じです。セミコロンは2つの別々のコマンドで区切られています。 syncコマンドがディスクへのデータの書き込みを開始する準備ができているときに、前のddコマンドが画面に間違った< write speed>値を表示しました。だからあなたはまだ本当の書き込み速度を得ることができません。

実際の結果:

268435456バイト(268 MB)コピー、0.522815秒、513 MB /s

3.dd bs = 64k count = 4k if = /dev /zero of = test conv = fdatasync

このパラメータを追加すると、ddコマンドは実際には最後に "sync"操作を実行するため、今回は128Mのデータを取得します。メモリに到達してディスクに書き込むために必要な時間なので、計算された時間は実際の使用結果とより一致しています。

実際の実行結果:

268435456バイト(268 MB)コピー、2.8046秒、95.7 MB /秒

4.dd bs = 64k count = 4k if = /dev /zero of = test oflag = dsync

このパラメータを追加すると、ddは実行されるたびに同期書き込み操作を実行します。つまり、このコマンドは、64kの読み取り後に最初に64kをディスクに書き込み、次に次の64kを合計128回読み取る必要があります。基本的に書き込みキャッシュは使用されないので、これはおそらく最も遅い方法です。

実際の実行結果:

268435456バイト(268 MB)コピー、3.40069秒、78.9 MB /s

一般的に、4番目の方法が最も厳密です。データベースの挿入操作をシミュレートすることができるので非常に遅いvpsハードディスクのパフォーマンス標準をテストするためのベンチマークでもあります一般的に言えば、テスト結果が10Mを超えても通常のステーション構築には影響しません。 50メガバイト以上は、非常に強力な状態です、このVPSのハードドライブのパフォーマンスは非常に良い見た、DDの速度は78.9MB /秒に達した。

これらのコマンドでは、bs = 64kは同時に読み取り/出力のブロックサイズが64kバイトであることを意味し、count = 4kはコピーブロックの数が4000であることを意味します。 1GデータでDDを実行します。

dd if = /dev /zero of = test bs = 64k count = 16k oflag = dsync

は、各ブロックサイズが64kバイトであることを意味します。 16kブロック数のテスト、実際のテスト結果:

1073741824バイト(1.1 GB)コピー、18.9098秒、56.8 MB /s

上記は、DDコマンドを使用してLinuxディスクのパフォーマンスをテストする方法です。実際、この方法の原理は、ファイル転送の速度によってディスクの読み書き頻度をテストするためにDDコマンドのコピー機能を使用することです。

Copyright © Windowsの知識 All Rights Reserved