磁盘IO是检查磁盘性能的一个重要指标,根据负载情况可以分为顺序读写和随机读写两类。
Fio是测试磁盘性能的最佳工具:
DDIf=/dev/zeroof=/root/testbs=4kcount=524288(创建一个2G文件)
1.测试顺序读取性能。
fio --filename=/root/test -iodepth=64 -ioengine=libaio --direct=1 --rw=read --bs=1m --size=2g --numjss="superseo">ss="superseo">obs=4 --runtime=10 --group_reporting --name=test-read2.测试顺序写入性能。
fio -filename=/root/test -iodepth=64 -ioengine=libaio -direct=1 -rw=write -bs=1m -size=2g -numjobs=4 -runtime=20 -group_reporting -name=test-write3.测试随机读取性能。
fio -filename=/root/test -iodepth=64 -ioengine=libaio -direct=1 -rw=randread -bs=4k -size=2G -numjobs=64 -runtime=20 -group_reporting -name=test-rand-read4.测试随机写入性能。
fio -filename=/root/test -iodepth=64 -ioengine=libaio-direct=1 -rw=randwrite -bs=4k -size=2G -numjobs=64 -runtime=20-group_reporting -name=test-rand-write参数描述:
Filename=/root/test测试文件名,通常选择被测磁盘的数据目录。
direct=1测试过程绕过机器自带的缓冲区。使测试结果更加真实。
rw=随机写入的randwrite测试I/O
rw=随机写入和随机读取的randrw测试I/O
BS=4k。单个io的块文件大小为4k
size=2g。这个测试文件大小是2g,每次都用4Kio测试。
numjobs=64。这个测试线程是64。
runtime=20。测试时间为20秒。不写的话,每次都是4k写2g文件。
如何查看报告:
FIO的成果报告内容丰富,我们主要关注两项:
磁盘的吞吐量bw,这是顺序读写的重点
磁盘每秒的iops,这是随机读写的重点。
例如,以下是四个测试结果的部分截取:
test-read:(groupid=0,jobs=4):err=0:PID=4752
read:io=839680kb,bw=76823KB/s,iops=75,runt=10930msec毫秒
顺序读取,带宽76823KB/s,iops75
测试-写入:(groupid=0,jobs=4):err=0:PID=4758
写入:io=899072KB,bw=42854KB/s,iops=41,runt=20980msec
写序列,带宽42854KB/s,iops=41
test-rand-read:(groupid=0,jobs=64):err=0:PID=4619
read:io=72556kb,bw=3457.4KB/s,iops=864,runt=20986msec
随机读取,带宽3457.4KB/s,iops=864
test-rand-write:(groupid=0,jobs=64):err=0:PID=4685
write:io=129264kb,bw=6432.4KB/s,iops=1608,runt=20097msec毫秒
随机写入,带宽6432.4KB/s,iops=1608
引用:
http://linux.die.net/man/1/fio
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)