硬盘测试——fio
时间: 2016-11-06来源:OSCHINA
前景提要
fio(Flexible IO Tester) FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎, 包括:sync,mmap, libaio, posixaio, SG v3, splice, null, network, syslet, guasi, solarisaio 等等。
参数说明: filename=/dev/sdb1 #测试文件名称,通常选择需要测试的盘的data目录 direct=1 #测试过程绕过机器自带的buffer。使测试结果更真实 rw=randwrite #测试随机写的I/O rw=randread #测试随机读的I/O rw=randrw #测试随机写和读的I/O rw=read #测试顺序读的I/O rw=write #测试顺序写的I/O bs=16k #单次io的块文件大小为16k bsrange=512-2048 #同上,提定数据块的大小范围 size=5G #本次的测试文件大小为5g,以每次4k的io进行测试 numjobs=30 #本次的测试线程为30个 runtime=1000 #测试时间1000秒,如果不写则一直将5g文件分4k每次写完为止 ioengine=psync #io引擎使用psync方式 rwmixwrite=30 #在混合读写的模式下,写占30% group_reporting #关于显示结果的,汇总每个进程的信息 lockmem=1G #只使用1g内存进行测试 zero_buffers #用0初始化系统buffer nrfiles=8 #每个进程生成文件的数量
常用参数使用举例: #顺序读 fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest #顺序写 fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest #随机读 fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest #随机写 fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest #混合随机读写 fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop
测试结果分析: bw:磁盘的吞吐量,这个是顺序读写考察的重点 iops:磁盘的每秒读写次数,这个是随机读写考察的重点 read : io=948896KB, bw=9475.1KB/s, iops=592, runt=100138msec write: io=380816KB, bw=3802.1KB/s, iops=237, runt=100138msec

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

热门排行