目次
fio(Flexible IO Tester)
http://freecode.com/projects/fio/
http://git.kernel.dk/?p=fio.git;a=summary
filename | 指定したファイルパスにテスト用のファイルを作成する |
direct | trueの場合にはnon-buffered I/Oで計測する。 OSバッファを使いたくない場合は1を指定 |
rw | I/Oのパターンを指定。 read(シーケンシャルread)、randread(ランダムread) write(シーケンシャルwrite)、randwrite(ランダムwrite) |
bs | I/Oで利用するブロックのサイズ プログラムのI/Oの単位に合わせる。分からなければ、straceなどで writeのサイズを確認する PostgreSQLのブロックサイズ(ページサイズ)は、8KBです。 Hadoop(HDFS)のブロックサイズは、64MBや128MBが使用されます。 |
size | I/Oで利用する合計のサイズ |
numjobs | パフォーマンス計測時のプロセス/ストッドの数 プログラムで並列度を指定できるものは、並列度(numjobs)を変えて測定 並列度が低すぎるとディスクの性能を引き出せません。 逆に高すぎても、I/O待ちが発生してベストな性能は出せません。 |
runtime | 実行時間の限度。秒単位。 |
group_reporting | 有効にするとnumjobsで複数処理した結果をまとめて表示する |
name | ジョブの名前 |
io | 全体のIO量 |
bw | 帯域幅、スループット |
iops | IOPS |
runt | 実行時間(run time) |
# シーケンシャルリード fio -filename=/tmp/test2g -direct=1 -rw=read -bs=4k -size=2G -numjobs=64 -runtime=60 -group_reporting -name=file1 # シーケンシャルライト fio -filename=/tmp/test2g -direct=1 -rw=write -bs=4k -size=2G -numjobs=64 -runtime=60 -group_reporting -name=file1 # ランダムリード fio -filename=/tmp/test2g -direct=1 -rw=randread -bs=4k -size=2G -numjobs=64 -runtime=60 -group_reporting -name=file1 # ランダムライト fio -filename=/tmp/test2g -direct=1 -rw=randwrite -bs=4k -size=2G -numjobs=64 -runtime=60 -group_reporting -name=file1
#シーケンシャルリード fio -filename=/tmp/test2g -direct=1 -rw=read -bs=32m -size=2G -numjobs=16 -runtime=60 -group_reporting -name=file1 # シーケンシャルライト fio -filename=/tmp/test2g -direct=1 -rw=write -bs=32m -size=2G -numjobs=16 -runtime=60 -group_reporting -name=file1 # ランダムリード fio -filename=/tmp/test2g -direct=1 -rw=randread -bs=32m -size=2G -numjobs=16 -runtime=60 -group_reporting -name=file1 # ランダムライト fio -filename=/tmp/test2g -direct=1 -rw=randwrite -bs=32m -size=2G -numjobs=16 -runtime=60 -group_reporting -name=file1
fio -direct=1 -iodepth=256 -rw=randwrite -ioengine=libaio -bs=4k =size=10G -numjobs=8 -runtime=300 -group_reporting -filename=/mnt/test -name=RW_Testing
一般向けサイト
ITエンジニア向けサイト
英語サイト
Portfolio
Copyright (c) 2024 システムパフォーマンス入門 All Rights Reserved.