linux系统IO性能测试

dd命令能粗略测试硬盘IO性能,但是执行dd命令测试硬盘IO性能,对硬盘的损害很大,不建议多次或长时间尝试.

[[email protected] /]# time dd if=/dev/zero of=/dev/null bs=4k count=256000
256000+0 records in
256000+0 records out
1048576000 bytes (1.0 GB) copied, 0.782804 s, 1.3 GB/s

real    0m0.786s
user    0m0.160s
sys 0m0.626s
[[email protected] /]# time dd if=/dev/zero of=/dev/null bs=4k count=256000 oflag=dsync
256000+0 records in
256000+0 records out
1048576000 bytes (1.0 GB) copied, 0.758887 s, 1.4 GB/s

real    0m0.762s
user    0m0.120s
sys 0m0.642s
[[email protected] /]# time dd if=/dev/zero of=/dev/null bs=4k count=256000 conv=fdatasync
dd: fsync failed for ‘/dev/null’: Invalid argument
256000+0 records in
256000+0 records out
1048576000 bytes (1.0 GB) copied, 0.514259 s, 2.0 GB/s

real    0m0.518s
user    0m0.128s
sys 0m0.390s
[[email protected] /]#

oflag=dsync:dd会从/dev/zero中,每次读取4Kbytes数据,然后直接写入到硬盘当中,重复此步骤,直到共读取并且写入了1 Gbytes的数据。这个过程可能会很慢,因为没有用到写缓存(write cache),加此参数,可以模拟数据库的插入操作,可能跟接近真实。

conv=fdatasync:dd会从/dev/zero中一次性读取1 Gbytes的数据,写入到磁盘的缓存中,然后再从磁盘缓存中读取,一次性写入到硬盘当中。

time命令用来计算dd程序的运行耗时(real), 用户态cpu耗时(user), 系统态cpu耗时(sys)。
real : 表示foo程序整个的运行耗时。可以理解为foo运行开始时刻你看了一下手表,foo运行结束时,你又看了一下手表,两次时间的差值就是本次real 代表的值
user:这个时间代表的是foo运行在用户态的cpu时间,
sys: 这个时间代表的是foo运行在核心态的cpu时间。

原文地址:http://blog.51cto.com/ityunwei2017/2328576

时间: 2024-07-31 19:01:09

linux系统IO性能测试的相关文章

Linux系统IO分析工具之iotop参数详解(查看IO占用)

这篇文章主要介绍了Linux系统IO分析工具之iotop参数详解(查看IO占用),本文着重注解了iotop工具的参数,以及可操作命令,需要的朋友可以参考下 简介: iotop – simple top-like I/O monitoriotop是一个用来监视磁盘I/O使用状况的 top 类工具,可监测到哪一个程序使用的磁盘IO的信息(requires 2.6.20 or later) 安装: 复制代码 代码如下: yum -y install iotop 用法: 复制代码 代码如下: iotop

基于Linux系统的性能测试

               性能测试:CPU内存,硬盘IO读写,带宽速度,UnixBench 一.CPU物理个数.内核.超线程.多核心 1.登录Terminal,执行:cat /proc/cpuinfo,就会显示出VPS主机的CPU详细参数,如内核.频率.型号等等,以下是我Linux 系统主机的CPU: 2.主要参数physical_id表示物理CPU个数,cpu cores是内核数,Siblings 表示位于这一物理封装上的逻辑处理器的数量,它们可能支持也可能不支持超线程(HT)技术. 3.

linux系统IO优化

Linux系统出现了性能问题,一般我们可以通过top.iostat.free.vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据. 基本使用 $iostat -d -k 1 10 参数 -d 表示,显示设备(磁盘)使用状态:-k某些使用block为单位的列强制使用Kilobytes为单位:1 10表示,数据显示每隔1秒刷新一次,共显示10次. # iostat -x 1 10 Linux 2.6.18-92.el5xen    02/03/2009 avg-c

Linux系统-IO调优

本文源链接地址:https:www.93bok.com 一.设置一个进程可以打开的文件数 A.查看:ulimit –n 从上边可以看出,一个进程最大只能打开1024个文件,我们来测试一下,用2000个客户端访问nginx页面2000次,看看会报什么错误 yum -y install httpd-tools ab -n 2000 -c 2000 http://192.168.10.22/index.html B.修改限制,优化: vim /etc/security/limits.conf * so

windows系统IO性能测试

关键词:sql server io测试 下载链接:http://www.onlinedown.net/soft/57364.htm CrystalDiskMark(硬盘检测工具),一个测试你的硬盘或者存储设备的小巧工具,简单易于操作的界面让你随时可以测试你的存储设备,测试存储设备大小和测试数字都可以选择,还可测试可读和可写的速度. CrystalDiskMark硬盘检测工具中文版下载 CrystalDiskMark(硬盘检测工具)功能介绍 在CrystalDiskMark界面可以选择测试次数,测

Linux系统开发 2 文件IO open() close() read() write() perror() lseek() fcntl() ioctl()

[本文谢绝转载,原文来自http://990487026.blog.51cto.com] 大纲 Linux系统开发 man 文档的使用 文件IO open() 创建文件,指定权限位 open() 接收参数 创建文件 open() 传两个参数 第三个参数从内存取垃圾值 write()函数 向文件写数据 write()函数的覆盖操作 open()函数文件的追加 open() 创建文件,如果文件已经存在,就报错 测试一个程序最多能创建1021个文件,3个STDIN STDOUT STDERR已经存在了

linux系统监控、诊断工具摘录top IO wait lsof

linux 系统监控.诊断工具之 top 详解 http://my.oschina.net/leejun2005/blog/157910 linux系统监控.诊断工具之 IO wait http://my.oschina.net/leejun2005/blog/355915 linux 系统监控.诊断工具之 lsof 用法简介 http://my.oschina.net/leejun2005/blog/153584 CPU Load过高问题分析和解决方案 http://yikebocai.com

linux 系统监控、诊断工具之 IO wait

1.问题: 最近在做日志的实时同步,上线之前是做过单份线上日志压力测试的,消息队列和客户端.本机都没问题,但是没想到上了第二份日志之后,问题来了: 集群中的某台机器 top 看到负载巨高,集群中的机器硬件配置一样,部署的软件都一样,却单单这一台负载有问题,初步猜测可能硬件有问题了. 同时,我们还需要把负载有异常的罪魁祸首揪出来,到时候从软件.硬件层面分别寻找解决方案. 2.排查: 从 top 中可以看到 load average 偏高,%wa 偏高,%us 很低: 充分说明这个问题是由于 IO

[转]linux 系统监控、诊断工具之 IO wait

1.问题: 最近在做日志的实时同步,上线之前是做过单份线上日志压力测试的,消息队列和客户端.本机都没问题,但是没想到上了第二份日志之后,问题来了: 集群中的某台机器 top 看到负载巨高,集群中的机器硬件配置一样,部署的软件都一样,却单单这一台负载有问题,初步猜测可能硬件有问题了. 同时,我们还需要把负载有异常的罪魁祸首揪出来,到时候从软件.硬件层面分别寻找解决方案. 2.排查: 从 top 中可以看到 load average 偏高,%wa 很高,%us 偏低: 从上图我们大致可以推断 IO