【干货分享】优麒麟上的硬盘读写性能测试(附感恩节获奖名单)

当我们做磁盘读写性能测试的时候,性能测试工具必不可少。目前市场上有很多可以做性能测试的工具,本文介绍一款可以在优麒麟系统上使用的性能测试工具:iozone。

性能测试主要是通过自动化测试工具模拟多种使用场景(正常情况、高负载,高容量等),从而实现对系统的各项性能指标进行测试。系统性能测试主要包括网络性能测试(iperf、TamoSoft Throughput Test 等)、内存性能基准测试(memtaster、unixbench 等)、硬盘读写功能性能测试(iozone、fio 等)以及系统反应时间性能测试(lmbench)等。

iozone 是一款用于测试文件系统的读写性能的开源工具,可以测试读取(read)、写入(write)、重读(re-read)、重写(re-write)、倒序读(read backwards)、调用库函数 fwrite 写(fwrite) ,调用库函数 fread 读(fread)、跳跃读(read strided)、随机读(random read) 、 随机写(random write)等等不同的模式下的硬盘的性能。下面介绍 iozone 的下载、安装及使用情况。

1.下载安装包

首先下载 iozone 的安装包,可以直接使用浏览器下载或者在终端使用 wget 命令下载 iozone 的 tar 包。其下载网址为 http://www.iozone.org/src/current/  ,在其网址下有多个 iozone 版本,可以根据具体需要进行下载。下载命令及详情如图1所示。

终端下载命令:

wget http://www.iozone.org/src/current/iozone3_491.tar

优麒麟(Ubuntu Kylin)

图1:下载 iozone 的 tar 包

2.解压

其次使用 tar 命令将下载的 iozone 的 tar 包解压至相应的路径下,例如将其 iozone 的 tar 包解压至“/opt”下。解压命令及解压情况如图2所示。

解压 iozone 的 tar 包至“/opt”目录下的命令:

sudo tar -xvf iozone3_491.tar -C /opt/

优麒麟(Ubuntu Kylin)

图2:解压iozone的tar包

3.编译

然后将其目录切换至 iozone 解压后的“/src/current”下使用 make 命令进行编译,与手工编译、连接相比,make 编译在一定程度上实现了自动化编译,它只会更新修改过的文件,对于没有修改过的文件不会重新生成,并且不会漏掉任何一个需要更新的文件,从而提高编译效率。iozone 的 make 编译命令如图3所示。

切换至“/src/current”目录下命令:

cd /opt/iozone3_491/src/current/

iozone 的 make 编译命令:

make linux

优麒麟(Ubuntu Kylin)

图3:iozone 的 make 编译

4.测试

根据测试文件大小的不同,iozone 磁盘读写性能的测试方法主要包括1倍内存测试和2倍内存测试。其中,1倍内存测试和2倍内存测试分别如图4和图5所示。

iozone 的1倍内存测试命令:

sudo ./iozone -s 8G -r 16M -i 0 -i 1 -i 2 -f /mnt/iozone -Rb /home/result/result.xls

优麒麟(Ubuntu Kylin)

图4:iozone 的1倍内存测试

iozone 的2倍内存测试命令:

sudo ./iozone -s 16G -r 16M -i 0 -i 1 -i 2 -f /mnt/iozone -Rb /home/result/result1.xls

优麒麟(Ubuntu Kylin)

图5:iozone 的2倍内存测试

关于 iozone 测试命令中的各参数的具体含义如下所示:

①-s:表示指定测试文件的大小(file size)

②-r:表示一次写入/读出的块大小即记录块的大小(block size)

③-i:表示指定运行的测试模式,共包括12种测试模式(0:write/rewrite,1:read/re-read,2:random-read/write,3:read-backwards,4:re-write-record,5:stride-read,6:fwrite/re-fwrite,7:fread/Re-fread,8:randommix,9:pwrite/Re-pwrite,10:pread/Re-pread,11:pwritev/Re-pwritev,12=preadv/Re-preadv),其中比较常用的为0,1,2,分别表示 write,read,random

④-f:表示指定测试文件的名称,当测试结束后,会将其进行删除

⑤-R:表示产生 Excel 的输出日志

⑥-b:表示将输出结果输入到指定的相应的文件上,例如上面结果输入到/home/result 路径下的 result1.xls 文件下

5.统计

为了更加直观的统计出系统磁盘读写的性能情况,通常情况下,我们将其测试结果保存为 Excel 表格形式,如下图6所示。

优麒麟(Ubuntu Kylin)

图6:iozone 的2倍内存测试结果

还有一个我们需要注意的点,在使用 iozone 对系统磁盘读写性能进行测试时,测试文件的大小一般设置为大于或者等于内存的两倍,最佳设置为内存的两倍大小,如果将测试文件的大小设置为小于内存的大小,Linux 系统可能将读写的内容进行缓存,从而使 iozone 磁盘读写测试结果非常不准确。

以上就是关于优麒麟性能测试工具 iozone 的使用内容,如果有任何问题或需要,可访问优麒麟社区官网与我们联系,网址: https://www.ubuntukylin.com/  。

最后,特别感谢优客们积极参与优麒麟感恩节留言活动,你们的支持,是优麒麟前进的动力!请以下中奖的小伙伴将“在看”截图发送至微信公众号后台并领取奖品:

优麒麟(Ubuntu Kylin)

投稿作者 作者网站

评论

 
 

发表评论

 
你的昵称*
电子邮件*
网址(选填)
我的评论*
  • 发表评论
  • 为您推荐


    请支持IMCN发展!

    谁在捐赠

    微信捐赠 支付宝捐赠
    微信捐赠 支付宝捐赠




    微信公众号二维码

    归档