简介:   

磁盘设备之上是文件系统,测试磁盘的工具往往就是调用块设备驱动的接口进行读写测试。而文件系统的测试软件就是针对文件系统层提供的功能进行测试,包括文件的打开关闭速度以及顺序读写随机位置读写的速度。以及进程并发数目等各个方面进行详细的测试。

IOZone是目前应用非常广泛的文件系统测试标准工具,它能够产生并测量各种的操作性能,包括read, write, re-read, re-write, read backwards, read strided, fread, fwrite, random read, pread ,mmap, aio_read, aio_write等操作。Iozone目前已经被移植到各种体系结构计算机和操作系统上,广泛用于文件系统性能测试、分析与评估的标准工具。

IOZone和IOMeter不同,IOMeter的测试是基于数据块的,而IOZome的测试是基于文件的,因此更适合用来测试文件系统的性能。使用IOZone 可以在多线程,多CPU,并指定CPU Cache 空间大小以及同步或者异步IO读写模式的情况下进行文件操作的性能测试。

参考链接:http://www.iozone.org/

下载:可以在参考链接进行下载;在写此博文是 iozone的版本为3 487; 下载为 压缩包,解压后,根据软件说明文档可以进行编译生成 对应平台的 测试文件;

常用参数:(具体参数,可以参考iozone 文档,该文档较为详细)

-a     全面测试,比如块大小它会自动加;

-i N           用来选择测试项(具体参数,后面有详细描述);

-r block size     制定一次写入/读出的块大小;

-s file size                 制定测试文件的大小;

-f filename      制定测试文件的名字,完成后会自动删除;

-F     file1 file2…..    多线程下测试的文件名;

-g –n        指定测试文件大小范围。-n 后接最小值,-g 后接最大值 ,如测试512m-4G:-n 512m –g 4G;

-y –q        指定测试块的大小范围;

-R     产生excel到标准输出;

-b     制定将结果输出到制定文件上,比如:-Rb test.xls;

-i # 的详细选项:

Used to specify which tests to run. (=write/rewrite, =read/re-read, =random-read/write
=Read-backwards, =Re-write-record, =stride-read, =fwrite/re-fwrite, =fread/Re-fread,
=random mix, =pwrite/Re-pwrite, =pread/Re-pread, =pwritev/Re-pwritev, =preadv/Repreadv).
One will always need to specify so that any of the following tests will have a file to measure.
-i # -i # -i # is also supported so that one may select more than one test.

使用:

我们可以把生成的iozone 可执行文件拷贝到需要运行挂载点进行运行。也可以使用 -f 指定路径;

常用命令:

iozone –Ra

iozone –Rab output.wks

iozone –Ra –g 2G –i 0 –i 1

iozone –Rac (NFS 使用)注意此时-c 标志在nfs中的使用:

This tells Iozone to include the close() in the measurement. This may be needed if the client is
running NFS version . Including the close() helps to reduce the client side cache effects of NFS version .
If you use a file size that is larger than the amount of memory in the client then the ‘c’ flag is not needed.

-c 标志的含义

使用范例:

在current目录下,执行测试指令

[root@localhost current]# ./iozone -a -n 1g -g 4g -i 0 -f /test.txt -Rb ./test.xls

说明:

./iozone:运行iozone工具;

  -a:进行全面测试;

  -n 1g:测试最小文件为1g;

  -g 4g:  测试最大文件为4g;

  -I :  测试模式为写;

  -f:   测试文件为:/test.txt;

  -Rb: 将测试结果放入test.xls;

测试结果如下图所示:

测试结果分析:

打开test.xls文件:

在excel文件中,说明了这个表单关于write的测试结果,最左侧一列是测试文件的大小(Kbytes);最上的横行,是记录大小;中间数据是测试的传输数据。

如,213749:表示测试文件大小为1G,以记录大小为1m来进行传输,它的传输速度为213749kbytes/s。

常用测试命令:

./iozone -R -a -b hvs-iozone.xls -c -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8

该命令中,-a表示使用全自动模式进行测试,并根据测试结果生成excel测试文件,程序生成的所有测试单次操作从4k到16M不等;文件尺寸从64k到512m不等;测试中-c表示包含close操作的时间,这在网络文件系统中起到一定作用。命令中表示对 0=write/rewrite, 1=read/re-read,2=random-read/write,3=Read-backwards,4=Re-write-record, 5=stride-read, 8=random mix 这几种读写模式进行测试;测试结果输出在命令行中,同时在输出 hvs-iozone.xls 文件中;

参考链接:

http://www.iozone.org/docs/IOzone_msword_98.pdf (推荐)

https://www.cnblogs.com/ykhyq/p/9627843.html

保持更新,资源来源自网络。如果对您有帮助,请点击推荐给予鼓励吧。cnblogs.com/xuyaowen

最新文章

  1. maven 多模块项目
  2. [Java入门笔记] 面向对象三大特征之:继承
  3. vs2015 安装之后安装MSSM 2016 导致 vs启动报错 System.ArgumentException 已添加了具有相同键的项,ActivityLog.xml
  4. 日常使用的shell脚本
  5. SPOJ 1108 Card Trick 暴力模拟
  6. Python成长之路第一篇(3)_初识字典
  7. Java多机部署下的定时任务处理方案(mysql)
  8. 201521123017 《Java程序设计》第2周学习总结
  9. 语义化版本控制规范(SemVer)
  10. python进行md5加密
  11. Linux基础学习:文件与目录管理
  12. 【如皋OJ】1127:正整数N转换成一个二进制数
  13. 编辑datagridview单元格
  14. luogu2024 食物链 (并查集)
  15. Java IO笔记
  16. Docker常用命令学习
  17. str 操作
  18. CentOS 7 通过 yum 安装 nodejs 和 npm
  19. selenium 实现网页截图
  20. View 的setTag() 和 getTag()

热门文章

  1. 最新IDEA永久激活
  2. RHEL/CentOS 安装最新版Nginx
  3. redis的介绍与操作及Django中使用redis缓存
  4. .NET Core AES-CCM&AES-GCM加密算法
  5. iOS中截取字符串指定位置
  6. JDK 安装与环境配置配置——Android开发第一步
  7. 12-Factor与微服务
  8. Go Modules使用教程
  9. linux离线安装mysql5.7
  10. python 基础学习笔记(8)--装饰器