在磁盘测试中最关心的几个指标分别为:

iops(每秒执行的IO次数)、bw(带宽,每秒的吞吐量)、lat(每次IO操作的延迟)。

当每次IO操作的block较小时,如512bytes/4k/8k等,测试的主要是iops。

当每次IO操作的block较大时,如256k/512k/1M等,测试的主要是bw。

1. FIO 简介

  FIO 是一款 用于对磁盘进行性能测试的工具。可以测试IOPS,吞吐量,IO延迟等主要性能指标。而且支持多种IO引擎。

2. FIO 下载

  下载地址:http://brick.kernel.dk/snaps/

  打开以上网址,选择自己需要的版本并下载。比如:

  

wget http://brick.kernel.dk/snaps/fio-3.5.tar.gz
--2018-03-26 14:19:37-- http://brick.kernel.dk/snaps/fio-3.5.tar.gz
正在解析主机 brick.kernel.dk... 216.160.245.99
正在连接 brick.kernel.dk|216.160.245.99|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 302 Found
位置:http://113.215.21.45:80/1Q2W3E4R5T6Y7U8I9O0P1Z2X3C4V5B/brick.kernel.dk/snaps/fio-3.5.tar.gz [跟随至新的 URL]
--2018-03-26 14:19:39-- http://113.215.21.45/1Q2W3E4R5T6Y7U8I9O0P1Z2X3C4V5B/brick.kernel.dk/snaps/fio-3.5.tar.gz
正在连接 113.215.21.45:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:729544 (712K) [application/x-gzip]
正在保存至: “fio-3.5.tar.gz”
72% [======================================================================> ] 532,565 154K/s eta(英国中部时
83% [=================================================================================> ] 610,757 159K/s eta(英国中部时
84% [=================================================================================> ] 616,549 149K/s eta(英国中部时
96% [=============================================================================================> ] 706,325 162K/s eta(英国中部时
100%[=================================================================================================>] 729,544 164K/s in 4.3s
2018-03-26 14:19:44 (164 KB/s) - 已保存 “fio-3.5.tar.gz” [729544/729544])

  或者下载后再上传至服务器。

 

3. 解压并安装

  

# tar -xzvf ./fio-3.5.tar.gz
.... 省略输出
# cd fio-3.5
# make && make install
.... 省略输出
# which fio
/usr/local/bin/fio

4. 使用说明

  

filename=/dev/sdb1       测试文件名称,通常选择需要测试的盘的data目录。
direct= 测试过程绕过机器自带的buffer。使测试结果更真实。
rw=randwrite 测试随机写的I/O
rw=randrw 测试随机写和读的I/O
bs=16k 单次io的块文件大小为16k
bsrange=- 同上,提定数据块的大小范围
size=5g 本次的测试文件大小为5g,以每次4k的io进行测试。
numjobs= 本次的测试线程为30.
runtime= 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。
ioengine=psync io引擎使用pync方式
rwmixwrite= 在混合读写的模式下,写占30%
group_reporting 关于显示结果的,汇总每个进程的信息
lockmem=1g 只使用1g内存进行测试。
zero_buffers 用0初始化系统buffer。
nrfiles= 每个进程生成文件的数量

5. 测试示例

  混合测试: 

fio -filename=/tmp/test -direct= -iodepth  -thread -rw=randrw -rwmixread= -ioengine=psync -bs=512b -size=200m -numjobs= -runtime= -group_reporting -name=mytest

 

顺序读:
fio -filename=/dev/test -direct= -iodepth -thread -rw=read -ioengine=psync -bs=16k -size=2G -numjobs= -runtime= -group_reporting -name=mytest 随机写:
fio -filename=/dev/test -direct= -iodepth -thread -rw=randwrite -ioengine=psync -bs=16k -size=2G -numjobs= -runtime= -group_reporting -name=mytest 顺序写:
fio -filename=/dev/test -direct= -iodepth -thread -rw=write -ioengine=psync -bs=16k -size=2G -numjobs= -runtime= -group_reporting -name=mytest

    

fio 测试磁盘性能的更多相关文章

  1. vdbench和fio测试磁盘性能的对比总结

    一.安装 1.安装vdbench,首先安装java:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-213 ...

  2. [记录]FIO测试磁盘iops性能

    FIO测试磁盘iops性能 1.SATA和SAS盘原生IOPS如下: 2.RAID磁盘阵列对应的写惩罚级别: 3.计算功能性IOPS公式如下: 功能性 IOPS=(((总原生 IOPS×写 %))/( ...

  3. 使用SQLIO测试磁盘性能

    SQLIO 是一个用于测试存储系统能力的命令行工具,用以获取存储系统相关的性能指标,以判断系统的 I/O 处理能力. 在微软的网站可以下载 SQLIO 的安装包,安装后目录中会出现如下文件: EULA ...

  4. linux使用FIO测试磁盘的iops 【转载】

     linux使用FIO测试磁盘的iops 2013-09-23 10:59:21 分类: LINUX FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括 ...

  5. 【转】dd命令详解及利用dd测试磁盘性能

    dd命令详解及利用dd测试磁盘性能   linux下dd命令详解 名称: dd 使用权限: 所有使用者 manpage 定义: convert and copy a file 使用方式: dd [op ...

  6. Linux 中使用 dd 测试磁盘性能

    翻译自 : Linux I/O Performance Tests using dd 基本说明 dd 可以用来做简单的低级别复制文件. 这样做, 一般都是可一直直接访问设备文件. 需要说明的是, 错误 ...

  7. 使用FIO测试磁盘iops

    我们如何衡量一个存储的性能呢?IOPS(Input/Output OperationsPer Second),即每秒进行读写(I/O)操作的次数是国际上通用的存储性能衡量标准,IOPS越高意味着在同一 ...

  8. iozone测试磁盘性能

    什么是iozone? iozone是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统的读写性能. 可以测试 Read, write, re-read,re-write, read ...

  9. 使用iozone测试磁盘性能

    IOzone是一个文件系统测试基准工具.可以测试不同的操作系统中文件系统的读写性能.可以通过 write, re-write, read, re-read, random read, random w ...

随机推荐

  1. Windows 7 SP1无人值守自动应答文件制作

    使用U盘安装Windows系统时,很多人都会使用UltraISO工具来制作U盘启动盘,然后插入到电脑中加以安装.系统的安装过程中,需要一步一步手动选择或者输入配置,Windows是支持无人值守自动应答 ...

  2. 第一节,Windows10下Darkflow的安装与测试(YOLO)

    1.下载Darkflow:https://github.com/thtrieu/darkflow 2.解压到目录,打开cmd,进入到解压的目录,并输入python setup.py build_ext ...

  3. Workbook导出excel封装的工具类

    在实际中导出excel非常常见,于是自己封装了一个导出数据到excel的工具类,先附上代码,最后会写出实例和解释.支持03和07两个版本的 excel. HSSF导出的是xls的excel,XSSF导 ...

  4. linux 安装图行界面

    centos6的环境中 代码:[root@ebs122 sysconfig]#yum groupinstall "Desktop" 使用 init 5命令进入图形化界面,如果成功的 ...

  5. dubbo学习笔记1

    DUBBO入门 官方文档:https://dubbo.gitbooks.io/dubbo-user-book/content/preface/ 服务提供者 项目结构: pom文件: <?xml ...

  6. dubbo源码分析7——dubbo的配置解析_与spring的整合

    dubbo的配置其实就是建立在spring的命名空间的配置机制之上的.在dubbo的jar包的META-INF目录下会有spring.handlers这个文件,用来配置spring的命名空间和解析类的 ...

  7. delphi 的 ORM 框架

    delphi 的 ORM 框架,收集如下: 1.EntityDac    https://www.devart.com/entitydac/download.html 2.mORMot    The  ...

  8. MySQL DROP TABLE操作以及 DROP 大表时的注意事项【转】

    删表 DROP TABLE Syntax DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCAD ...

  9. bootstrap例子

    <!DOCTYPE html> <html> <head> <title>Bootstrap 101 Template</title> &l ...

  10. 如何确定windows启动类型是bios还是uefi

    原文地址:http://www.kqidong.com/bios/3728.html 如何确定windows启动类型是bios还是uefi?随着装机越来越简单,大家对安装系统充满信心,但是了解到启动类 ...