FIO测试磁盘iops性能
1.SATA和SAS盘原生IOPS如下:
2.RAID磁盘阵列对应的写惩罚级别:
3.计算功能性IOPS公式如下:
功能性 IOPS=(((总原生 IOPS×写 %))/(RAID 惩罚))+(总原生IOPS×读 %)
4.根据公式和测试磁盘(两块15000RPM SAS组成的RAID1)的类型,这里取原生IOPS值为180,得到如下理论IOPS参考值:
IOPS = (180 * 30%)/2 + (180 * 70%) = 54(写IOPS) + 126(读IOPS)
5.测试结果为:
5.1)#fio -filename=/data/testfio.txt -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
注意:一定要指定 -filename=/data/testfio.txt到具体的文件名,不可直接指定磁盘分区,如:/dev/sda3。否则将导致磁盘分区不可用需要重新格式化分区。
指定块大小为16K,总文件大小为200G,读70%,写30%的混合读写进行测试:
如上图红框所示:
测试得到:写IOPS=51 读IOPS=124
与理论值:54(写IOPS) + 126(读IOPS)相比差距并不大,磁盘IO性能正常。
5.2)#fio -filename=/data/testfio.txt -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4k -size=20G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop
指定块大小为4K,总文件大小为20G,读70%,写30%的混合读写进行测试:
如上图红框所示:
测试得到:写IOPS=73 读IOPS=173
与理论值:54(写IOPS) + 126(读IOPS)相比,磁盘IO性能正常。
与5.2)测试相比,文件块和文件大小越小,磁盘表现出的性能更好。
6.综合以上数据判断,由两块15000rpm SAS磁盘组成的RAID1阵列提供的存储IOPS性能正常,没有问题。
参考链接:http://blog.51cto.com/122269875/1698262