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:zuijiaz@outlook.com
#Time of creation:2023.04.13

fio性能测试-环境搭建,功能介绍,测试讲解的更多相关文章

  1. Mac 性能测试环境搭建——理论篇

    此篇为博主原创内容,若转载请写明出处,谢谢! 前言在搭建之初,我们要思考的2个点:1.性能怎么测试?2.性能的测试环境如何搭建(该如何去做)?1.什么是性能?    个人理解为:合理的架构.低耦合.高 ...

  2. Elasticsearch环境搭建和介绍(Windows)

    一.Elasticsearch介绍和安装 1.1 介绍  Elastic Elastic官网:https://www.elastic.co/cn/ Elastic有一条完整的产品线:Elasticse ...

  3. kafka环境搭建及librdkafka测试

    kafka环境搭建及librdkafka测试 (2016-04-05 10:18:25)   一.kafka环境搭建(转自http://kafka.apache.org/documentation.h ...

  4. 二进制搭建kubernetes多master集群【开篇、集群环境和功能介绍】

    本文主要说明kubernetes集群使用组建的版本和功能介绍.. 一.组件版本 Kubernetes 1.12.3 Docker 18.06.1-ce Etcd 3.3.10 Flanneld 0.1 ...

  5. 转:(WIN)S04-CH01 PCIE XDMA开发环境搭建以及环路测试

    摘要: 这一章开始主要介绍 XILINX FPGA PICE IP XDMA IP的使用.XDMA IP使用部分教程分LINUX 篇和WINDOWS篇两个部分.通过实战,面向应用,提供给大家 XILI ...

  6. Redis环境搭建和代码测试及与GIS结合的GEO数据类型预研

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 1.1传统MySQL+ Memcached架构遇到的问题 My ...

  7. Jmeter环境搭建详细介绍

    [前言] 欢迎来到我的博客,知识在于分享,如有不足之处,希望指出,大家共同进步学习! [JDK检查和安装] 现在市面上比较普遍的性能测试工具无非就LoadRunner和Jmeter,本人一直秉持着便宜 ...

  8. windows环境下mosquitto环境搭建与mqtt测试

    https://blog.csdn.net/pgpanda/article/details/51800865 工作需求,自己在windows下搭建了一个mosquitto环境测试mqtt 话不多说,直 ...

  9. Jmeter学习一:Jmeter性能测试环境搭建(Windows下)

    最近刚开始接触Jmeter性能测试,现总结环境搭建如下: 一.windows安装JDK步骤与环境变量配置: 1.先将下载的JDK安装到其默认目录:C:\Program Files\Java\jdk1. ...

  10. Libgdx环境搭建及介绍

    Libgdx简单介绍: libgdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成.ibgdx兼容大多数微机平台(标准JavaSE实现,能执行在Mac.Linux.Win ...

随机推荐

  1. 使用idea从零编写SpringCloud项目-Ribbo

    git:https://github.com/bmdcheng/product_server git:https://github.com/bmdcheng/order_server 1.需要创建两个 ...

  2. hdu:Two Rabbits(区间DP)

    Problem DescriptionLong long ago, there lived two rabbits Tom and Jerry in the forest. On a sunny af ...

  3. webpack配置跨域proxy

    首先新建一个项目: 安装vue-cli: npm i -g @vue/cli npm i -g @vue/cli-init 安装webpack: npm install webpack -g vue新 ...

  4. 微信小程序安装vant

    1.初始化npm并安装 npm init -y npm install 2.修改project.config.json { "setting": { "packNpmMa ...

  5. 游戏内存优化之使用16位纹理/NPOT

    转自:https://blog.csdn.net/oqqQuZi1234567/article/details/41749599 图片文件大小和纹理内存占用是两码事.假设他们是帐篷.图片文件就相当于帐 ...

  6. MySql 字符串时间转换

    MySql中经常遇到字符串格式时间转换成时间类型的情况: SELECT STR_TO_DATE('Jul 20 2013 7:49:14:610AM','%b %d %Y %h:%i:%s:%f%p' ...

  7. 狂神的学习笔记demo11(包机制)

    无法生成子包的问题:设置图标里的Compact Middle Packages勾去掉 //定义包 package package com.panda.base1; //导入包import import ...

  8. C# DataGridView 新增列 新增行 操作函数 - [ 自律相互分享,共促一起进步 - 社会的正常运维就这么简单,何以权,何以钱...- 张光荣2010年谈社会改正提出的正能量]

    功能: 一.列相关: 1.追加列,左插列,右插列, 2.删除列 二.行相关: 1.追加行,上插行,下插行 2.删除行,删除所有空行,清空所有数据... 原理:根据对鼠标于 DataGridView 点 ...

  9. Asp.net MVC5中没有BundleConfig.cs-MVC学习笔记(一)

    创建ASP.NET MVC5项目时,选择了空项目,在App_Start文件夹中没有默认创建了BudleConfig.cs文件. 下面就来手动添加 在NuGet中搜索Microsoft.AspNet.W ...

  10. 使用php将字典格式的字符串转为array

    例: 原字符串为 $a = '{"errcode":0,"errmsg":"ok","msgid":1472671765 ...