fio 硬盘测试工具
一、windows环境
1. 安装fio:http://www.bluestop.org/fio/ 可以选择不同版本的安装,安装后在C:\Program Files\fio目录中可以找到fio的执行程序和相应的文档。fio.exe 会自动 加入环境变量中
2. 使用
找到要测试的磁盘的序号:
powershell 输入 diskpart进入磁盘工具
list disk 显示所以的磁盘编号
选择没有分区的磁盘(fio 在qwindows上只能测试没有分区的磁盘)
所有我们选择 disk 1 进行测试
测试脚本
fio --name=test --rw=randrw --direct=1 --iodepth=8 --blocksize=1024k --ioengine=windowsaio --filename=\\.\PhysicalDrive1 --numjobs=1 --refill_buffers --norandommap --randrepeat=0 --rwmixread=0 --group_reporting --runtime=600 --thread
各参数的含义
--name 为测试起一个名字
--rw 读写的形式 --rw=write 连续写 --rw=randwrite 随机写 --rw=read 连续读 --rw=randread 随机读 --rw=randrw 随机读写 取决于后面的读写比例
--direct=1 1 表示不使用缓存
--iodepth=8 每个测试线程的队列深度
--blocksize io的大小
--ioengine=windowsaio IO引擎是Windows的异步IO引擎
--filename=\\.\PhysicalDrive1 这里就是我们要测试的磁盘
--numjobs=1 同时测试的线程数量(这个值乘以上面的iodepth就是对磁盘产生的实际队列深度,这里1X8,所以实际队列深度为8)
--refill_buffers 这个选项告诉fio将在每次submit之后都会将重新填满IO buffer。否则fio会在初始时填满,以后重复利用
--norandommap 般情况下,fio在做随机IO时,将会覆盖文件/磁盘的每一个block。如果这个选项设置的话,fio将只是获取一个新的随机offset,而不会查询过去的历史。这意味着一些块可能没有读或写,一些块可能要读/写很多次。
--randrepeat=0 对于随机IO负载,配置生成器的种子,使得路径是可以预估的,使得每次重复执行生成的序列是一样的。
--rwmixread=0 随机读写的读写比率。0,表示100%写,这个值设置为100 表示百分百读
--group_reporting 报道结果
--runtime=600 测试的时间
--thread 由于使用了多线程 所以要加上这个参数
从上面的报告可以看出,IOPS平均值为 153 带宽利用率 为 162Mb/s 56.87%的延时在50ms
例子
全盘1024KB随机读
fio --name=test --rw=randrw --direct=1 --iodepth=8 --blocksize=1024k --ioengine=windowsaio --filename=\\.\PhysicalDrive1 --numjobs=8 --refill_buffers --norandommap --randrepeat=0 --rwmixread=100 --group_reporting --runtime=180 --thread
全盘128KB连续读
fio --name=test --rw=read --direct=1 --iodepth=8 --blocksize=128k --ioengine=windowsaio --filename=\\.\PhysicalDrive1 --numjobs=8 --group_reporting --runtime=1800 --thread
全盘128KB连续写
fio --name=test --rw=write --direct=1 --iodepth=8 --blocksize=128k --ioengine=windowsaio --filename=\\.\PhysicalDrive1 --numjobs=8 --group_reporting --runtime=1800 --thread
完整的使用请看 安装目录下的参考文档 HOWTO
二、linux环境
centos 下安装
yum install -y fio
fio 硬盘测试工具的更多相关文章
- 硬盘测试工具fio用法总结
一 fio介绍 linux下的一种常用的磁盘测试工具,支持裸盘和文件形式进行测试 二 硬盘测试常用名词 延迟:io的发起到返回写入成功的时间成为延迟,fio中延迟分为lat,slat,clat ...
- SSD固态硬盘测试工具收集(持续更新)
https://www.crsky.com/zhuanti/gutaiyingpanceshi.html https://www.crsky.com/zhuanti/ssdjiance.html ht ...
- 硬盘性能测试工具fio
如何衡量云硬盘的性能 IOPS:每秒读/写次数,单位为次(计数).存储设备的底层驱动类型决定了不同的 IOPS. 吞吐量:每秒的读写数据量,单位为MB/s. 时延:IO操作的发送时间到接收确认所经过的 ...
- 云硬盘性能测试工具FIO介绍
一.云硬盘的性能衡量指标 云硬盘的性能指标一般通过以下几个指标进行衡量 IOPS:每秒的读写次数,单位为次(计数).存储设备的底层驱动类型决定了不同的IOPS 总IOPS:每秒执行的I/O操作总次数 ...
- linux 磁盘IO测试工具:FIO (同时简要介绍dd工具测试)
FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证.磁盘IO是检查磁盘性能的重要指标,可以按照负载情况分成照顺序读写,随机读写两大类. 目前主流的第三方IO测试工具有fio.iomete ...
- IOPS 测试工具 FIO
FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎. fio-2.8下载: wget http://brick.kernel.dk/snaps/fio-2.8 ...
- fio硬盘压力测试
fio测试工具支持同步(pread/pwrite)和异步(libaio)FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, lib ...
- 转://linux下的CPU、内存、IO、网络的压力测试工具与方法介绍
转载地址:http://wushank.blog.51cto.com/3489095/1585927 一.对CPU进行简单测试: 1.通过bc命令计算特别函数 例:计算圆周率 echo "s ...
- 转载: 一、linux cpu、内存、IO、网络的测试工具
来源地址: http://blog.csdn.net/wenwenxiong/article/details/77197997 记录一下 以后好找.. 一.linux cpu.内存.IO.网络的测试工 ...
随机推荐
- 批量升级 CentOS bash
#! /usr/bin/env python #coding=utf-8 from fabric.api import * from fabric.state import * env.rol ...
- 06 saltstack生产实例-需求
https://github.com/unixhot/saltbook-code .Cobbler 1.15 统一网卡名 .Zabbix 系统已经安装好了! base .手动实现 .需要使用salt的 ...
- 【leetcode】1275. Find Winner on a Tic Tac Toe Game
题目如下: Tic-tac-toe is played by two players A and B on a 3 x 3 grid. Here are the rules of Tic-Tac-To ...
- Prism框架中View与Region关联的几种方式
Prism.Regions命名空间下有2个重要接口:IRegionManager.IRegion IRegionManager接口中的方法与属性:AddToRegion().RegisterViewW ...
- TCP 之 FIN_WAIT_2状态处理流程
概述 在主动关闭方发送了FIN之后,进入FIN_WAIT_1状态,在此状态收到了ACK,则进入FIN_WAIT_2状态,而FIN_WAIT_2后续要做的工作是等待接收对端发过来的FIN包,并且发送AC ...
- H264之基础篇
1. H264 基础概念 在 H.264/AVC 视频编码标准中,整个系统框架划分为如下两个层面: 视频编码层(VCL):VCL 数据即被压缩编码后的视频数据序列,负责有效表示视频数据的内容: 网络抽 ...
- [转]基于java的程序OutOfMemory问题的解决及Xms/Xmx/Xss的解释和应用
长期以来一直都是做java应用的开发,所使用的开发工具基本上也都是基于java的,经常用的有eclipse, netbeans, ant, maven, cruisecontrol, tomcat, ...
- tp5 模型中 关联查询(省去了foreach写法)
1.控制器中 $list = Userlawsbook::where($where)->with('lawsbook')->paginate(7); // 此处查出来为数组对象 dump ...
- vxWorks下常用的几种延时方法
在应用编程的时候,通常会碰到需要一个任务在特定的延时之后执行一个指定的动作,如等待外设以确保数据可靠,控制扬声器发声时间以及串口通信超时重发等.这就需要利用定时器机制来计量特定长度的时间段. ...
- Laravel find in set排序
做项目遇到个需求,需要对结果集中的数据进行指定规则的顺序排列.例如,用户状态有四种: 0=>未激活:1=>正常:2=>禁用:3=>软删除 现在的需求是,我要按照:正常-> ...