『壹』 我想做linux 的磁盘io性能测试,有什么好的工具和方法推荐吗,感谢
|用Linux自带的命令 dd
写回
#time dd if=/dev/zero bs=1024 count=1000000 of=/tmp/1Gb.file
1024000000 bytes (1.0 GB) copied, 9.46522 s, 108 MB/s
real 0m9.503s
user 0m0.316s
sys 0m8.485s
读答
#time dd if=/tmp/1Gb.file bs=64k |dd of=/dev/null
1024000000 bytes (1.0 GB) copied, 9.46522 s, 108 MB/s
real 0m9.503s
user 0m0.316s
sys 0m8.485s
『贰』 【fio】CentOS.x上磁盘性能测试工具fio的安装和使用
Summary : Multithreaded IO generation tool
Description : fio is an I/O tool that will spawn a number of threads or processes doing a particular type of io action as specified by the user. fio takes a number of global parameters, each inherited by the thread unless otherwise parameters given to them overriding that setting is given.
The typical use of fio is to write a job file matching the io load one wants to simulate.
多线程IO生成工具
fio是一个I / O工具,它将产生许多线程或正在执行的进程 ,由用户指定的特定类型的io操作。
fio需要一个 全局参数的数量,每个参数都由线程继承,否则给他们的参数将覆盖该设置。
fio的典型用法是编写与io负载匹配的需要模拟的作业文件 。
官网地址: http://freecode.com/projects/fio
# yum -y install lio gtk2 lio-devel gtk2-devel
# yum -y install fio
# yum info fio
# rpm -ql fio | grep "bin"
应用使用IO通常有二种方式:同步和异步。
同步的IO一次只能发出一个IO请求,等待内核完成才返回,这样对于单个线程iodepth总是小于1,但是可以透过多个线程并发执行来解决,通常我们会用16-32根线程同时工作把iodepth塞满。
异步的话就是用类似lio这样的Linux native aio一次提交一批,然后等待一批的完成,减少交互的次数,会更有效率。
注意 : 性能测试建议直接通过写裸盘的方式进行测试,会得到较为真实的数据,但直接测试裸盘会破坏文件系统结构,导致数据丢失,请在测试前确认磁盘中数据已备份。
# fio -direct=1 -iodepth=64 -rw=read -ioengine=lio -bs=4k -size=10G -numjobs=1 -name=./fio.test
"-direct=1",代表采用非 buffered I/O 文件读写的方式,避免文件读写过程中内存缓冲对性能的影响
"-iodepth=64"和"-ioengine=lio"这两个参数,这里指文件读写采用异步 I/O(Async I/O)的方式,也就是进程可以发起多个 I/O 请求,并且不用阻塞地等待 I/O 的完成。稍后等 I/O 完成之后,进程会收到通知。这种异步 I/O 很重要,因为它可以极大地提高文件读写的性能。在这里我们设置了同时发出 64 个 I/O 请求
"-rw=read,-bs=4k,-size=10G",这几个参数指这个测试是个读文件测试,每次读 4KB 大小数块,总共读 10GB 的数据。最后一个参数是"-numjobs=1",指只有一个进程 / 线程在运行。所以,这条 fio 命令表示我们通过异步方式读取了 10GB 的磁盘文件,用来计算文件的读取性能。
我们看到在 上图中测试中, I/O 性能是 15.9MB/s 的带宽,IOPS(I/O per second)是 4076 左右。
fio压测工具和io队列深度理解和误区
http://blog.yufeng.info/archives/2104
fio – IO压力测试工具
https://younger.blog.csdn.net/article/details/71129541
fio安装使用方法
https://www.kclouder.cn/fio
fio模拟MySQL服务器IO压力脚本
http://blog.yufeng.info/archives/1497
fio使用详解
https://blog.csdn.net/m0_37972390/article/details/80019762
Fio Output Explained
https://tobert.github.io/post/2014-04-17-fio-output-explained.html
『叁』 怎么测硬盘读写速度
问题一:如何查看硬盘读取速度 你是指硬盘读取速度实时监控还是读取速度测试?
实时监控:
如果是Win7操作系统的话倒是可以通过资源监视器来观察:任务栏空白处点右键 任务管理器 性能(选项卡) 资源监视器(按钮) 磁盘(选项卡),
“磁盘活骇的进程”栏显示的是当前所有进程的硬盘读写速度,右边折线图显示的是各个硬盘的读写速度。宴竖灶
至于XP,我暂时不知道哪个软件能实时监控的。
如果是速度测试,可以用HDTrue等软件测试,也可以用Fast复制文件根据软件显示的速度来测试
问题二:如何查看磁盘的读取速度 hdparm -t /dev/sdx (x 代表 a,b,c,第一块硬盘为 a,第二块为 b,依此类推。)
非常简单好用的命令,请参考书籍《Linux就该这么学》
问题三:什么软件可以看到硬盘的读写速度 鲁大师强调的是易用性,界面简单易懂,但测的数据不具体不准确,换hdtune测一下。
跑一下速度测试(基准测试),看曲线是否平滑。机械硬盘一般是平滑持续下降,固态硬盘是一条直线。看大起大落多不多,最低速度是不是特别低。速度起落太大就意味着盘的性能大幅度衰退,最低速度特别低的话,这盘就用不长了。
问题四:如何查看自己硬盘的最大读写速度 方法一:在网上下载这个软件 硬盘测速工具HD_Speed;
方法二:如果是win7系统,可以通过资源监视器来查看。任务栏空白处点击右键,任务管理器,性能(选项卡),资源监视器(按钮),磁盘(选项卡)。
问题五:硬盘的读取速度和写入速度是什么意思 这样子说吧,读取速度纤行就是你看书的速度,而写入速度就是你写书的速度。
至于写入速度一般就是这个样子了,也不算低了,应该楼主的硬盘才64G。固态硬盘一般越大,它的写入速度越快的。
至于系统的运行速度主要是看在固态硬盘的瞬时读攻性。只要是固态硬盘,那么系统的反应速度就很快的了,这个不用担心。
希望对楼主有所帮助。
问题六:怎么测试硬盘传输速度 最常用的就是HD Tune Pro了
HD Tune 是一款硬盘性能诊断测试工具。它能检测硬盘的传输率、突发数据传输率、数据存取时间、CPU 使用率、健康状态,温度及扫描磁盘表面等。另外,还可详细检测出硬盘的固件版本、序列号、容量、缓存大小以及当前的传送模式等。
并不是所有硬盘都能报告温度!有部分硬件支持不好的时候就不会显示温度了。这样的问题所有测试软件都会有!
如果不愿意安装任何的专业软件,可以使用FastCopy来测试,另外Win7以上的机器自带的Winsat也可以
问题七:一般硬盘读取速度和写入速度是多少 硬盘的传输速率:作为电脑晌扮中最重要的数据存储设备和数据交换媒介,硬盘传输速率的快慢直接影响了系统的运行速度。不同类型的硬盘,其传输速率往往差别很大。现在主流硬盘主要有三种:按照不同的接口可以分为并口ATA硬盘(即IDE硬盘)、SCSI硬盘和Serial ATA硬盘。
IDE接口硬盘在当前电脑中应用最为广泛,主流的规格包括ATA/66、ATA/100、ATA/133,这种命名方式也表明了它们在理论上的外部最大传输速率分别达到了66MB/s、100MB/s和133MB/s。这里需要说明:100MB/s、133MB/s是峰值速度,并不能表示硬盘能持续这个速度,也就是说这是理论上的最高峰值速度。
硬盘真正的传输速度由于受硬盘内部传输速率的影响,其稳定传输速率一般在30MB/s到45MB/s之间。这样随着CPU、内存等硬件运行速度的不断提高,ATA硬盘的低速率渐渐成为影响整机运行速度的瓶颈。于是,一种新的硬盘接口方式,Serial ATA应运而生。
Serial ATA 硬盘就是我们常说的串口硬盘,它采用点对点的方式实现了数据的分组传输从而带来更高的传输效率。Serial ATA 1.0版本硬盘的起始传输速率就达到150MB/s,而Serial ATA 3.0版本将实现硬盘峰值数据传输率为600MB/s,从而最终解决硬盘的系统瓶颈问题。
SCSI接口不是专为硬盘设计的,实际上它是一种总线型的接口,独立于系统总线工作。SCSI接口的硬盘以高稳定性、低CPU占有率而被广泛应用于服务器和专业工作站中,它的传输速率最高可达320MB/s。当然,对于硬盘的整体性能而言,除了硬盘的传输速率,硬盘的转速、缓存及平均寻道时间等也是重要的因素。
小知识:1.硬盘的内部数据传输率
内部数据传输率是磁头到硬盘的高速缓存之间的数据传输速度,这可以说是影响硬盘整体性能的关键,一般取决于硬盘的盘片转速和盘片数据线密度。在这项指标中常常使用MB/s或Mbps为单位,这是兆位/秒的意思,如果需要转换成MB/s(兆字节/秒),就必须将Mbps数据除以8。例如有的硬盘给出最大内部数据传输率为240Mbps,但如果按MB/s计算就只有30MB/s。由此可以看出目前硬盘作为电脑的瓶颈,其病根还在于硬盘的内部数据传输率上。
2.硬盘的外部数据传输率
指从硬盘缓冲区读取数据的速率。它与硬盘的接口类型是直接挂钩的,因此在广告或硬盘特性表中常以数据接口速率代替,单位为MB/s如我们平常所说的ATA100/133硬盘。
光驱的传输速率:通常光驱传输速率的高低取决于光驱的倍速,如16X DVD、52X的CD-ROM,一般情况下光驱的倍速越高,数据传输也就越快。那么“倍速”是个什么概念呢?原来很早以前CD-ROM的传输速率很低,每秒只能传送150KB字节,即最初光驱的速率为150KB/s,这就是1X(单倍速)的CD-ROM光驱。后来随着CD-ROM光驱技术的日新月异,其速率越来越快,为了区分不同速率的光驱,于是把最初的150KB/s作为基准进行衡量得到相应的倍速值。如50X的CD-ROM就是指其传输的速度是1X光驱的50倍即其速率为50×150KB/s=7500KB/s。而现在流行的DVD-ROM的速率算法也基本相同,只不过DVD-ROM的单倍速率要比CD-R......>>
问题八:windows怎么测试磁盘读写速度 方法一:
可以在开机后进入BIOS设置程序,将硬盘参数项检测出来后保存设置,这样就可以缩短硬盘的自检时间。
方法二:
如果电脑有快速启动功能,开启该功能可以加快启动速度。
方法三:
如果主板上有空的IDE插槽,那么在BIOS设置程序中将该接口参数设置为None,同样可以提高IDE设备的检测速度。
方法四:
电脑开机后进入BIOS设置程序,取消硬盘开机自检功能。
问题九:硬盘的读写速度如何计算? raid0,速度就是几块硬盘的总和。比如3块硬盘,每块100M/s,就是300M/s。
raid5,就是几块硬盘总和减1。比如3块硬盘,每块100M/s,就是200M/s。
但要注意,sata接口是有带宽极限的。
如果你硬盘都插主板上的sata接口,那问题不大。如果是通过磁盘阵列接过来的,那么,要经过sata和u *** 等接口,会受到限制。
sata2的极限就是260M/s左右。sata3的极限就是550M/s左右。
问题十:怎样测试移动硬盘的读写速度? 下载atto disk benchmark测试,USB2.0的WD移动硬盘的场,读写在30M/S左右正常
『肆』 我想做linux的磁盘io性能测试,有什么好的工具和方法推荐吗,感谢
除了fio测试工具和iostat,其他工具的测试结果基本上都是扯淡,跟直观感受毁镇距离太远,尤其是随机IO。
而且测试结果都不能反如戚映真实负载纤橡粗,如果依据这个结果去预估负载,更是差的远。
『伍』 如何测刚买的固态硬盘 好坏速度
测试固态硬盘好坏方法闷纳如下:
下面以三星840EVO 1TBSSD进行分析;
第一种方法
工具 CrystalDiskMark
三星840EVO1TBSSD读写IOPS值、
其中第一项为“16MB”数据块的测试IOPS,“512B”字节的测试项目,我们仅作一般考量。
“4K”和“4K-64Thrd”则是重要测试项目,它们属于较为核心的IOPS指标。三星840EVO1TBSSD在4K字节测试环境下,获得10823 IOPS,写入29891 IOPS;在4K-64Thrd测试环境下,获得读取94408 IOPS,写入84902 IOPS。
『陆』 怎么去测试物理服务器和虚拟机的磁盘I/O的读写性能。
一般的磁盘检查工具就可以了,像 HD Tune 之类的,有的优化软件也集成了硬盘检测的组件,可内以做读写测试的,容比如“软媒魔方”集成的“磁盘大师”组件等等。
如果还不清楚,就直接网络搜索“磁盘性能测试”吧,会有你想要的。
『柒』 服务器性能测试典型工具介绍
众所周知,服务器是整个网络系统和计算平台的核心,许多重要的数据都保存在服务器上,很多网络服务都在服务器上运行,因此服务器性能的好坏决定了整个应用系统的性能。
现在市面上不同品牌、不同种类的服务器有很多种,用户在选购时,怎样从纷繁的型号中选择出所需要的,适合于自己应用的服务器产品,仅仅从配置上判别是不够的,能够通过实际测试来筛选。而各种的评测软件有很多种,你应该选择哪个软件测试?下面就介绍一些较典型的测试工具:
(一)服务器整机系统性能测试工具
一台服务器系统的性能可以按照处理器、内存、存储、网络几部分来划分,而针对不同的应用,可能会对某些部分的性能要求高一些。
Iometer(www.iometer.org):存储子系统读写性能测试
Iometer是Windows系统下对存储子系统的读写性能进行测试的软件。可以显示磁盘系统的IO能力、磁盘系统的吞吐量、CPU使用率、错误信息等。用户可以通过设置不同的测试的参数,有存取类型(如sequential ,random)、读写块大小(如64K、256K),队列深度等,来模拟实际应用的读写环境进行测试。
Iometer*作简单,可以录制测试脚本,可以准确有效的反映存储系统的读写性能,为各大服务器和存储厂商所广泛采用。
Sisoft Sandra(www.sisoftware.co.uk):WINDOWS下基准评测
SiSoft发行的Sandra系列测试软件是Windows系统下的基准评测软件。此软件有超过三十种以上的测试项目,能够查看系统所有配件的信息,而且能够对部分配件(如CPU、内存、硬盘等)进行打分(benchmark),并且可以与其它型号硬件的得分进行对比。另外,该软件还有系统稳定性综合测试铅隐、性能调整向导等附加功能。
Sisoft Sandra软件在最近发布的Intel bensley平台上测试的内存带宽性能并不理想,不知道采用该软件测试的FBD内存性能是否还有参考价值,或许软件应该针对FBD内存带宽的测试项目做一个升级。
Iozone(www.iozone.org):linux下I/O性能测试
现在有很多的服务器系统都是采用linux*作系统,在linux平台下测试I/O性能可以采用iozone。
iozone是一个文件系统的benchmark工具,可以测试不同的*作系统中文件系统的读写性能。可以测试Read, write, re-read, re-write, read backwards, read strided, fread, fwrite, random read, pread ,mmap, aio_read, aio_write 等等不同的模式下的硬盘的性能。测试所有这些方面,生成excel文件,另外, iozone还附带了用gnuplot画图的脚本。
该软件用在大规模机群系统上测试NFS的性能,更加具有说服力。
Netperf(www.netperf.org):网络性能测试
Netperf可以测试服务器网络性能,主要针对基于TCP或UDP的传输。Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求/应答(request/reponse)模式。Netperf测试结果所反映的是一个系统能够以多快的速度向另外一个系统发送数据,以及另外一个系统能够以多块的速度接收数据。
Netperf工具以client/server方式工作。server端是netserver,用来侦听来自client端的连接,client端是 netperf,用来向server发起网络测试。在client与server之间,首先建立一个控制连接,传递有关测试配置的信息,以及测试的结果;在控制连接建立并传递了测试配置信息以后,client与server之间会再建立一个测试连接,用来来弯激拆回传递着特殊的流量模式,以测试网络的性能。
对于服务器系统来说,网络性能显得尤其重要,有些服务器上为了节省成本,采用了桌面级的网络芯片,性能怎样,用这个软件一测便知了。
以上介绍的这几款测试工具都是可以免费从网上下埋枣载的非商业软件,但是其测试结果和认可程度均是为大多数使用者所认同的。你可以根据自己的应用需求选择不同的软件进行测试。
(二)针对应用的测试工具
随着web应用的增多,服务器应用解决方案中以Web为核心的应用也越来越多,很多公司各种应用的架构都以web应用为主。一般的web测试和以往的应用程序的测试的侧重点不完全相同,在基本功能已经通过测试后,就要进行重要的系统性能测试了。系统的性能是一个很大的概念,覆盖面非常广泛,对一个软件系统而言包括执行效率、资源占用率、稳定性、安全性、兼容性、可靠性等等,以下重点从负载压力方面来介绍服务器系统性能的测试。系统的负载和压力需要采用负载测试工具进行,虚拟一定数量的用户来测试系统的表现,看是否满足预期的设计指标要求。负载测试的目标是测试当负载逐渐增加时,系统组成部分的相应输出项,例如通过量、响应时间、CPU负载、内存使用等如何决定系统的性能,例如稳定性和响应等。
负载测试一般使用工具完成,有LoadRunner,Webload,QALoad等,主要的内容都是编写出测试脚本,脚本中一般包括用户常用的功能,然后运行,得出报告。
使用压力测试工具对web服务器进行压力测试。测试可以帮助找到一些大型的问题,如死机、崩损、内存泄漏等,因为有些存在内存泄漏问题的程序,在运行一两次时可能不会出现问题,但是如果运行了成千上万次,内存泄漏得越来越多,就会导致系统崩滑。
Loadrunner:预测系统行为和性能的负载测试工具
目前,业界中有不少能够做性能和压力测试的工具,Mercury(美科利)Interactive公司的LoadRunner是其中的佼佼者,也已经成为了行业的规范,目前最新的版本8.1。
LoadRunner 是一种预测系统行为和性能的负载测试工具,通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试,LoadRunner 适用于各种体系架构,能支持广范的协议和技术(如Web、Ftp、Database等),能预测系统行为并优化系统性能。它通过模拟实际用户的*作行为和实行实时性能监测,来帮助您更快的查找和发现问题。Loadrunner是一个强大有力的压力测试工具,它的脚本可以录制生成,自动关联。测试场景面向指标,实现了多方监控。而且测试结果采用图表显示,可以自由拆分组合。
通过Loadrunner的测试结果图表对比,你可以寻找出系统瓶颈的原因,一般来说可以按照服务器硬件、网络、应用程序、*作系统、中间件的顺序进行分析。
Loadrunner是一款收费软件,根据测试项目和虚拟用户数目的不同而花费不同的费用。不过你可以下载到免费使用10天的测试版本。
Webload:WEB性能压力测试
webload是RadView公司推出的一个性能测试和分析工具,它让web应用程序开发者自动执行压力测试; webload通过模拟真实用户的*作,生成压力负载来测试web的性能。
用户创建的是基于javascript的测试脚本,称为议程agenda,用它来模拟客户的行为,通过执行该脚本来衡量web应用程序在真实环境下的性能。当前版本是6.0。webload提供巡航控制器cruise control的功能,利用巡航控制器,可以预定义web应用程序应该满足的性能指标,然后测试系统是否满足这些需求指标; cruise control能够自动把负载加到web应用程序,并将在此负荷下能够访问程序的客户数量生成报告。
webload能够在测试会话执行期间对监测的系统性能生成实时的报告,这些测试结果通过一个易读的图形界面显示出来,并可以导出到excel和其他文件里。
这两个软件的功能虽然强大,并且可以自动生成测试报告,但其终究是一个工具,如果你想真正的定位服务器性能的好坏和性能的瓶颈所在,需要使用工具的人对于测试软件的方方面面都要有了解,比如软件体系构架,网络拓扑,服务器硬件等知识。