LinuxでI/OIOPSを測定するためのテストを実行しました。
iozone -s 4g -r 2k -r 4k -r 8k -r 16k -r 32k -O -b /tmp/results.xls
iozoneは、出力は1秒あたりの操作数であると主張していますが、数値が大きすぎて妥当ではありません。 vmware esxコンソール(esxtop、次にv)で最大約320 CMD/sを観察しています。
File size set to 4194304 KB
Record Size 2 KB
Record Size 4 KB
Record Size 8 KB
Record Size 16 KB
Record Size 32 KB
OPS Mode. Output is in operations per second.
Command line used: iozone -s 4g -r 2k -r 4k -r 8k -r 16k -r 32k -O -b tmpresults.xls
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 Kbytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random bkwd record stride
KB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
4194304 2 19025 5580 27581 29848 284 198 415 1103217 1498 18541 4340 24245 25618
4194304 4 15650 21942 18962 21068 252 1198 193 976164 1677 22802 23093 21089 21232
4194304 8 11121 11638 10273 10165 247 1196 202 625020^C
^ Cを押す前に、テストは15時間実行されました。そのようなコマンドライン(専用の4ドライブRAID10 LUN、10k RPM SASドライブ))に対する通常の期待はありますか?
LinuxにIOPS測定の標準がないように見えるのは不思議です。これらの質問は、キャパシティプランニングまたはストレージサイジングのためにIOPSの見積もりを提供するように求められたときによく出てきます。私はこの情報を得るために複数のツールを使用することになります。まず、選択した方法を使用して負荷を生成する必要があります。代表的なアプリケーションの負荷、または上記のiozoneテストのようなもののいずれか。
別のウィンドウで、iostat -dxk 1
を使用してIOPSを追跡し、r/s列とw/s列を合計しますOR IBMのnmonツール を使用してD
Xfers
列を追跡するオプション(基本的にはiostatのr/sとw/sの合計です)。
これは、bonnie++ -u root -n 64:100000:16:64
(ターゲットディレクトリ内から実行)を使用した大量のシーケンシャル読み取りからのnmon
出力です。この時点で、15k RPM SASドライブの6ディスクRAID1 + 0アレイで約258メガバイト/秒で読み取りながら、最大3200IOPSを示しています。
- Disk I/O -----(/proc/diskstats)------- all data is Kbytes per second ---------------------------------------------
|DiskName Busy Read Write Xfers Size Peak% Peak-RW InFlight |
|iss/c0d0 100% 264571.1 112.3KB/s 3238.7 81.0KB 100% 340584.5KB/s 2 |
|s/c0d0p1 0% 0.0 0.0KB/s 0.0 0.0KB 0% 2.0KB/s 0 |
|s/c0d0p2 0% 0.0 0.0KB/s 0.0 0.0KB 99% 1022.4KB/s 0 |
|s/c0d0p3 0% 0.0 0.0KB/s 0.0 0.0KB 100% 3636.5KB/s 0 |
|s/c0d0p4 0% 0.0 0.0KB/s 0.0 0.0KB 0% 0.0KB/s 0 |
|s/c0d0p5 0% 0.0 0.0KB/s 0.0 0.0KB 0% 0.0KB/s 0 |
|s/c0d0p6 0% 0.0 0.0KB/s 0.0 0.0KB 0% 0.0KB/s 0 |
|s/c0d0p7 0% 0.0 41.9KB/s 7.5 5.0KB 100% 16103.5KB/s 0 |
|s/c0d0p8 0% 0.0 0.0KB/s 0.0 0.0KB 79% 147.8KB/s 0 |
|s/c0d0p9 100% 264571.1 64.4KB/s 3230.2 81.0KB 100% 340538.5KB/s 2 |
--------------------------------------------------------------------------------------------------------------------
基本的に、キャッシュから多くの助けを得ており、シーケンシャルは問題ありませんが、ランダム、特に書き込みは少ないようです。