iozone

 

一、简介

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

  iozone,io测试的标准软件,benchmark(基准),主要测试的是文件系统的各种读写性能,包含顺序读写以及随机读写,fread/fwrite读写,大跨度读写等等,在测试文件的读写性能方面,测试范围广,指标精确。

二、测试定义

write

测试向一个新文件写入的性能

re-write

测试向一个已经存在的文件写入的性能

read

测试读一个已经存在的文件的性能

re-read

测试读一个最近读过的文件的性能

random read

测试读一个文件中的随机偏移量的性能

random write

测试写一个文件中的随机偏移量的性能

random mix

测试读写一个文件中随机偏移量的性能

三、常用参数

-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 N详细介绍

N代表数字,不同的数字,则代表不同的测试模式,可以同时执行多个模式

0

write/rewrite

1

read/re-read

2

random read/random write

3

backwards read

4

re-write-record

5

stride-read

6

fwrite/re-fwrite

7

fread/re-fread

8

random mix

9

pwrite/re-pwrite

10

pread/re-pread

11

pwritev/re-pwritev

12

preadv/re-preadv

四、搭建

1、 下载安装包iozone3_482.tar

  去官网下载iozone源码包,然后编译适合自己的target的执行文件。

  # tar -xvf iozone3_482.tar

2、 安装gcc

  挂载linux(我使用虚拟机操作)镜像文件。进入yum源目录,安装gcc包

  # [root@localhost KYLIN]# yum install gcc-4.4.7-4.ky3.x86_64.rpm

五、使用

  1、进入iozone安装目录current目录

   /root/iozone3_482/src/current,每个人根据自己实际安装地址。

  2、 make linux

    在current目录下,执行make linux执行

3、 执行

  在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 0:  测试模式为写;

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

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

六、测试结果分析

打开test.xls文件,如下图所示:

  

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

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

iozone测试方法-20191008的更多相关文章

  1. Linux文件系统Ext2,Ext3,Ext4性能大比拼

    Linux kernel 自 2.6.28 开始正式支持新的文件系统 Ext4. Ext4 是 Ext3 的改进版,修改了 Ext3 中部分重要的数据结构,而不仅仅像 Ext3 对 Ext2 那样,只 ...

  2. Web 常用功能测试方法

    功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能.常用的测试方法如下: 1. 页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确. 2. 相 ...

  3. 【转】Web测试方法

    看到好文章,拿过来给大家分享分享! 一.输入框 1.字符型输入框: (1)字符型输入框:英文全角.英文半角.数字.空或者空格.特殊字符“~!@#¥%……&*?[]{}”特别要注意单引号和&am ...

  4. Web系统的常用测试方法

    在51上看到一篇不错的文章,拿过来分享一下,学习学习! Web系统的常用测试方法如下: 1. 页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确. 2. 相关性检查:删除/增加一项会不会 ...

  5. 以moosefs为例介绍iozone的使用方法

    一.编译安装 首先到官网下载iozone的稳定版源码 http://www.iozone.org/ 然后解压编译 tar -vxf iozone3_458.tar cd iozone3_458/src ...

  6. 常用的web功能测试方法

    功能测试就是对产品各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求功能,即是否满足需求.常用的测试方法如下: 1.页面连接检查:每一个连接是否都有对应的页面,并且页面之间切换正确. ...

  7. web测试方法总结

    链接地址:http://www.cnblogs.com/Jessy/p/3539638.html 一.输入框 1.字符型输入框: (1)字符型输入框:英文全角.英文半角.数字.空或者空格.特殊字符“~ ...

  8. TestNG 三 测试方法

    一.设置参数 测试方法是可以带有参数的.每个测试方法都可以带有任意数量的参数,并且可以通过使用TestNG的@Parameters向方法传递正确的参数. 设置方式有两种方法:使用testng.xml或 ...

  9. TestNG官方文档中文版(5)-测试方法/类和组

    5 - Test methods, Test classes and Test groups 5.1 - Test groups TestNG容许执行复杂的测试方法分组.不仅可以申明方法属于组,而且可 ...

随机推荐

  1. DAOS 分布式异步对象存储|数据平面

    DAOS 通过两个紧密集成的平面进行运转.数据平面处理繁重的运输操作,而控制平面负责进程编排和存储管理,简化数据平面的操作. 模块接口 I/O 引擎支持一个模块接口,该接口允许按需加载服务器端代码.每 ...

  2. ognl表达式应用场景和用法

    ognl表达式的用法和应用场景 1.配置文件 //书写方式是:'${@类全限定名@常量}' dic_city.type=${@com.imooc.constant.DictionaryConstant ...

  3. 仅使用css实现点击 控制元素的显示与隐藏!

    视频教程:https://www.bilibili.com/video/BV1uE411Q7tx?p=15&spm_id_from=pageDriver 大致方法:在被点击的元素后面 放一个c ...

  4. c# 定时启动一个操作、任务

    // 定时启动一个操作.任务 using System; using System.Collections.Generic; using System.Collections.ObjectModel; ...

  5. 14. VUE 子组件修改父组件的值

    在 Vue 当中,父组件 -> 子组件 传值,都是通过属性的形式传递的. 子组件 修改 传递数据 直接操作父组件传递过来的值,用是可以用的,但是打开控制台后,会发现 Vue 有个警告:你不要直接 ...

  6. 《C标准库》学习笔记整理

    简介 <C标准库>书中对 C 标准库中的 15 个头文件的内容进行了详细的介绍,包括各头文件设计的背景知识.头文件中的内容.头文件中定义的函数和变量的使用.实现.测试等. 我学习此书的目的 ...

  7. Webpack的理解以及解决了的问题

    一.背景 Webpack 最初的目标是实现前端项目的模块化,旨在更高效地管理和维护项目中的每一个资源 模块化 最早的时候,我们会通过文件划分的形式实现模块化,也就是将每个功能及其相关状态数据各自单独放 ...

  8. C - 抽屉 POJ - 3370 (容斥原理)

    Every year there is the same problem at Halloween: Each neighbour is only willing to give a certain ...

  9. 【Scrapy(四)】scrapy 分页爬取以及xapth使用小技巧

    scrapy 分页爬取以及xapth使用小技巧 这里以爬取www.javaquan.com为例: 1.构建出下一页的url: 很显然通过dom树,可以发现下一页所在的a标签   2.使用scrapy的 ...

  10. 【SpringBoot】SpringBoot集成jasypt数据库密码加密

    一.为什么要使用jasypt库? 目前springboot单体应用项目中,甚至没有使用外部配置中心的多服务的微服务架构的项目,开发/测试/生产环境中的密码往往是明文配置在yml或properties文 ...