linux下测试磁盘的读写IO速度-简易方法
linux下测试磁盘的读写IO速度-简易方法
参考资料:
https://blog.csdn.net/zqtsx/article/details/25487185
一:使用hdparm命令
这是一个是用来获取ATA/IDE硬盘的参数的命令,是由早期Linux IDE驱动的开发和维护人员 Mark Lord开发编写的( hdparm has been written by Mark Lord <mlord@pobox.com>, the primary developer and maintainer of the (E)IDE driver for Linux, with suggestions from many netfolk).该命令应该也是仅用于Linux系统,对于UNIX系统,ATA/IDE硬盘用的可能比较少,一般大型的系统都是使用磁盘阵列的.
使用方法很简单
[root@my1-222 ~]# hdparm -Tt /dev/sda3
/dev/sda3:
Timing cached reads: 13034 MB in 2.00 seconds = 6527.09 MB/sec
Timing buffered disk reads: 194 MB in 5.60 seconds = 34.64 MB/sec
[root@my1-222 ~]#
可以看到,2秒钟读取了13034MB的缓存,约合6527.09 MB/sec;
在3.11秒中读取了194MB磁盘(物理读),读取速度约合4.64 MB/sec
二:使用dd命令
这不是一个专业的测试工具,不过如果对于测试结果的要求不是很苛刻的话,平时可以使用来对磁盘的读写速度作一个简单的评估.另外由于这是一个免费软件,基本上×NIX系统上都有安装。
首先了解两个特殊设备
/dev/null 伪设备,回收站.写该文件不会产生IO
/dev/zero 伪设备,会产生空字符流,对它不会产生IO
测试方法:
a.测试磁盘的IO写速度
time dd if=/dev/zero of=test.dbf bs=8k count= # 如果要测试实际速度 还要在末尾加上 oflag=direct测到的才是真实的IO速度
b.测试磁盘的IO读速度
dd if=test.dbf bs=8k count= of=/dev/null
#表示 每次写入/读取8k的数据,执行300000次
dd命令可以通用,但不够专业,也没有考虑到缓存和物理读的区分,测试的数据也是仅作参考,不能算是权威。
[root@my1- ~]# time dd if=/dev/zero of=test.dbf bs=8k count=
+ records in
+ records out
bytes (2.5 GB) copied, 2.50417 s, MB/s real 0m2.537s
user 0m0.023s
sys 0m2.070s
[root@my1- ~]# time dd if=/dev/zero of=test.dbf bs=8k count= oflag=direct
+ records in
+ records out
bytes (2.5 GB) copied, 25.4357 s, 96.6 MB/s real 0m25.550s
user 0m0.010s
sys 0m13.655s
[root@my1- ~]# [root@my1- ~]# dd if=test.dbf bs=8k count= of=/dev/null
+ records in
+ records out
bytes (2.5 GB) copied, 1.94773 s, 1.3 GB/s
[root@my1- ~]#
dd命令解释
dd if= of= bs= skip= seek= conv=
一定不要搞混 source 和 target,不然数据会丢失。所以 dd 平时用着顺手就叫它 dd,但是不小心把数据弄没了就该哭着叫它 Data Destroyer 了。
一般它的常用参数有:
bs=n,block size,每次读取 n bytes 写入,可与 count 联用;
ibs=n,一次读入 bytes 个字节 (default is 512);
obs=n,一次性写 n bytes 个字节 (default is 512);
bs 可以同时设置上边两个参数;
cbs=n,一次转换 n 个 bytes,即转换缓冲区大小。;
count=n, bs 操作的次数,仅拷贝 n 个块,如 dvd: bs=1M count=4430;
skip=n,指 if 后面的原文件跳过 n bytes 再开始读取;
seek=n,指 of 后面的目标文件跳过 n bytes 再开始写入;
测试IO同时读和写的速度
[root@my1- ~]# time dd if=/dev/sda1 of=test.dbf bs=8k count=
+ records in
+ records out
bytes ( MB) copied, 2.23626 s, 93.8 MB/s real 0m2.394s
user 0m0.002s
sys 0m0.352s
[root@my1- ~]#
(同时测试读写速度时生成一个大小200M的 test.dbf文件)
上面测试的数据量比较小,仅作为参考.
linux下测试磁盘的读写IO速度-简易方法的更多相关文章
- linux下测试磁盘的读写IO速度
有时候我们在做维护的时候,总会遇到类似于IO特别高,但不能判定是IO瓶颈还是软件参数设置不当导致热盘的问题.这时候通常希望能知道磁盘的读写速度,来进行下一步的决策. 下面是两种测试方法:(1)使用hd ...
- linux下测试磁盘的读写IO速度【转】
Reference1:http://server.chinabyte.com/495/12361995.shtmlReference2:https://www.deleak.com/blog/2011 ...
- Linux 下测试磁盘读写 I/O 速度的方法汇总
在分布式异构存储系统中,我们经常会需要测量获取不同节点中硬盘/磁盘的读写 I/O 速度,下面是 Linux 系统下一些常用测试方法(之后不定期更新): 1.使用 hdparm 命令这是一个是用来获取A ...
- linux上测试磁盘IO速度
运维工作,经常要测试服务器硬件性能,以此来判断是否存在性能瓶颈. 下面介绍在linux上测试磁盘IO速度的工具: 1.hdparm CentOS中,安装的两种方法: 1) yum安装. # yum i ...
- [转帖]linux下CPU、内存、IO、网络的压力测试,硬盘读写速度测试,Linux三个系统资源监控工具
linux下CPU.内存.IO.网络的压力测试,硬盘读写速度测试,Linux三个系统资源监控工具 https://blog.51cto.com/hao360/1587165 linux_python关 ...
- (转)Linux下select, poll和epoll IO模型的详解
Linux下select, poll和epoll IO模型的详解 原文:http://blog.csdn.net/tianmohust/article/details/6677985 一).Epoll ...
- Linux下的磁盘分割和文件系统
一.各硬件装置在Linux下的文件名 1.IDE硬盘机 在Linux内的文件名: /dev/hd[a-d] (a-d 刚好是四个这个是有原因的具体如下) 解释:以 IDE 接口来说,由于一个 IDE ...
- Linux下查看磁盘挂载的几种方法
Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...
- Linux下查看磁盘挂载的三种方法
Linux下查看磁盘挂载的三种方法 2009-06-05 23:17 好久没有更新日志了,呵呵.不是没有要写的东东.实在抽不出时间来写,要准备公司的考试呢,C++考试.已经有七个月没有写C++代码了, ...
随机推荐
- Overrid Equals Defined Operator
public class Common { public override int GetHashCode() { return base.GetHashCode(); } public overri ...
- codeforces525B
Pasha and String CodeForces - 525B Pasha got a very beautiful string s for his birthday, the string ...
- Spring MVC 使用介绍(三)—— Controller接口控制器
一.概述 Controller接口类图如下,其中,BaseCommandController已从Spring 4移除 基于继承Controller接口的方式已经不推荐使用,仅供学习参考 二.基于Con ...
- HTML5-canvas-基础篇
<canvas>新元素 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成. <canvas> 标签只是图形容器,您必须使用脚本来 ...
- Dirichlet's Theorem on Arithmetic Progressions POJ - 3006 线性欧拉筛
题意 给出a d n 给出数列 a,a+d,a+2d,a+3d......a+kd 问第n个数是几 保证答案不溢出 直接线性筛模拟即可 #include<cstdio> #inclu ...
- BZOJ 2049 洞穴勘测
LCT判断联通性 没什么特别的..还是一个普通的板子题,把LCT当并查集用了,只不过LCT灵活一些,还可以断边 话说自从昨天被维修数列那题榨干之后我现在写splay都不用动脑子了,,机械式的码spla ...
- Python里format()方法基本使用
'''第一种:自然连接''' #format 连接字符串 str = '{}使用的python是{}版本'.format('我','3.6.5') print(str) #打印结果:我使用的pytho ...
- 【XSY2524】唯一神 状压DP 矩阵快速幂 FFT
题目大意 给你一个网格,每个格子有概率是\(1\)或是\(0\).告诉你每个点是\(0\)的概率,求\(1\)的连通块个数\(\bmod d=0\)的概率. 最开始所有格子的概率相等.有\(q\)次修 ...
- 【POJ 1001】Exponentiation (高精度乘法+快速幂)
BUPT2017 wintertraining(15) #6A 题意 求\(R^n\) ( 0.0 < R < 99.999 )(0 < n <= 25) 题解 将R用字符串读 ...
- 搭建本地yum源并定时同步
在生产中内网的机器都是不能访问外网,所以需要搭建本地yum源.以中国科学科技大学的yum源为基准.http://mirrors.ustc.edu.cn/ 有些模块会同步失败,可以wget下载至指定位置 ...