首页 > 其他分享 >fio性能测试-环境搭建,功能介绍,测试讲解

fio性能测试-环境搭建,功能介绍,测试讲解

时间:2023-04-13 23:37:50浏览次数:51  
标签:libaio based -- norandommap 测试 讲解 fio

fio性能测试-环境搭建,功能介绍,测试讲解

Fio介绍:FIO(Flexible I/O Tester)是一个用于测试磁盘、文件系统、块设备和网络设备性能的工具。它可以模拟不同类型的I/O负载,包括随机或顺序读写、混合读写、随机或顺序访问等。FIO提供了丰富的选项和参数,可以对测试进行高度定制化配置,以满足各种应用场景和需求。FIO是开源软件,可在Linux、Unix、Windows等多种平台上运行。

1.测试环境

系统:CentOS Linux release 7.9.2009 (Core)

硬盘:7.7TB(RAID5 SAS 1.2TB*8)

2.fio工具下载

1) yum直接下载

yum install fio -y

查看版本:fio –v

 2) 下载fio解压包离线安装

下载地址:https://github.com/axboe/fio

百度微云:https://pan.baidu.com/s/1OX18q2yiB_ZE0CTL8k19kw 提取码:2023 

腾讯微云:https://share.weiyun.com/kU9ecAC7 密码:632jf8

libaio-devel是依赖包,如不安装fio无法使用,会报错:fio: engine libaio not loadable fio: failed to load engine

rpm –ivh libaio-*

unzip fio-3.6.zip                           #解压
ls
cd fio-3.6/fio-3.6                       #进入fio解压包
chmod +x *                           #打开权限
./configure                          #配置环境
make && make install                  #编译安装

查看是否安装成功:fio –v

3.功能介绍

4.性能测试

顺序读(rand):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=read --bs=1M --numjobs=4 --iodepth=32 --runtime=300 --time_based  --thread --norandommap --group_reporting --name=fiotest
顺序写(write):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=write --bs=1M --numjobs=4 --iodepth=32 --runtime=300 --time_based  --thread --norandommap --group_reporting --name=fiotest
随机读(randread):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=randread --bs=4K --numjobs=4 --iodepth=32 --runtime=300 --time_based  --thread --norandommap --group_reporting --name=fiotest
随机写(randwrite):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=randwrite --bs=4K --numjobs=4 --iodepth=32 --runtime=300 --time_based  --thread --norandommap --group_reporting --name=fiotest

结果分析:

测试结果:bw=1142Mib/s

也可以使用以下命令可直接查看结果(在参数末尾添加 | grep BW ):

fio --filename=/dev/sda --ioengine=libaio --direct=1 --rw=write --bs=1M --numjobs=4 --iodepth=32 --runtime=300 --time_based  --thread --norandommap --group_reporting --name=fiotest |grep BW

以下是输出结果:

测试结果有了怎么判断自己测试的数据是否合格呢?

根据你测试的硬盘型号,去硬盘官网查询硬盘的读写标准

 

 

 

 

 

 

 

 

 

编制fio性能测试图进行对比

我这里写了一个脚本,会自动生成测试日志,有需要的同学,可以关注我,我发给你。

 

 

#The write:[email protected]
#Time of creation:2023.04.13

 

标签:libaio,based,--,norandommap,测试,讲解,fio
From: https://www.cnblogs.com/zuijiaz/p/17316950.html

相关文章

  • 灰狼、鲸鱼、人工蜂群算法matlab 程序采用CEC21测试函数对灰狼算法、鲸鱼算法、人工蜂
    灰狼、鲸鱼、人工蜂群算法matlab程序采用CEC21测试函数对灰狼算法、鲸鱼算法、人工蜂群算法的性能进行测试,可以得到相同测试环境(相同种群数量和迭代次数)的算法对比结果,附赠CEC21测试函数包和介绍资料。ID:4290671868436557......
  • 2023.04.13 定时测试随笔 T1
    T1P1133教主的花园传送门:洛谷P1133这是一道DP的题,定义状态\(dp[i][j][k]\)表示前\(i\)棵树所能达到的最大价值,且第\(i\)棵树为第\(j\)种树,\(j=0\)高度是\(10\),\(j=1\)高度是\(20\),\(j=2\)高度为\(30\),如果\(k=0\)它的高度小于相邻两颗,\(k=1\)则......
  • 科技论文:软件体系架构质量属性-可测试性
    软件体系架构质量属性-可测试性邱实(石家庄铁道大学河北省石家庄市050000) 摘要:测试是软件生命周期中不可忽略的一个关键过程。软件架构质量属性与软件测试密切相关。对于软件体系架构的质量属性,可测试性是一个非常重要的方面。在本文中,我们将探讨软件体系架构质量属性的......
  • 软件性能测试有哪些测试指标?具备CMA、CNAS认证的软件检测公司安利
    一、软件性能测试时有哪些测试指标?1.响应时间响应时间,简称RT。指系统对请求作出响应的时间,可以理解为用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,整个过程耗费的时间。2.系统处理能力指系统在利用系统硬件平台和软件平台进行信息处......
  • 敏捷测试高效实战-测试架构师成长记的读后感
    序测试工作的最终目标是服务于产品的商业价值;产品质量必须是由测试人员和开发人员共同负责的;测试团队不仅要提升自身的效率,也要提升整个研发团队的交付效率;正如《Google软件测试之道》一书中提到的,测试团队属于工程生产力团队,以产品交付和效率提升为己任;自动化测试平台建立了......
  • PentestLab-web安全XML测试-EXP2
    我们打开靶机选择“example2”观察页面我们尝试修改name参数http://192.168.20.157/xml/example2.php?name=hacker%27添加单引号报错存在闭合的可能性网上大神payload为hacker'or1=1]/parent::*/child::node()%00完整的payload为http://192.168.20.157/xml/example2.php?name=ha......
  • php对接Modbus设备详细讲解
    1、下载ModbusMaster类库文件下载地址1:https://github.com/sergejey/majordomo-modbus  //功能码比较全,无案例下载地址2:https://github.com/krakorj/phpmodbus //类库功能码少,有案例工具:1.  ModbusSlave: 从机端模拟软件,这里测试可以把他作为服务端,PHP为客户端就是取......
  • django 1.8 官方文档翻译:6-5-1 Django中的测试
    Django中的测试自动化测试对于现代web开发者来说,是非常实用的除错工具。你可以使用一系列测试–测试套件–来解决或者避免大量问题:当你编写新代码的时候,你可以使用测试来验证你的代码是否像预期一样工作。当你重构或者修改旧代码的时候,你可以使用测试来确保你的修改不会在意料之......
  • C#中使用自动化测试代码
    转载自:https://blog.csdn.net/yangyong1250/article/details/128892399......
  • 测试时sql查询没有输出数据
    测试时正常运行但无法输出查询的内容:错因:在实体类中没有添加toString()方法我的实体类:解决方法:在实体类中添加toString()方法(快捷键:alt+insert)点击查看代码`@OverridepublicStringtoString(){return"User{"+"id="+id+......