LINUX下测试磁盘性能

http://www.centos.ws/centos/linux/866.html

 

硬件环境:
IBM 3650 M3 7945o75机架式服务器,主要硬件参数:
Intel Xeon Processor X5675 6C 3.06GHZ 12MB Cache 1333MHz X 2
 4GB PC3L-10600 CL9 ECC DDR3 1333MHz LP RDIMM X 4
 300GB 10K 6Gbps SAS 2.5″ SFF Slim-HS HDD X 3
ServeRAID M5015阵列卡 组建RAID5
软件环境:
CentOS 5.8 64bit

dd测试的磁盘性能只是连续IO,所以只能作为理论值来参考。

简单测试:
dd if=/dev/zero of=test bs=64k count=16k
这个很不准确,因为命令结束的时候数据还没真正写到磁盘上;
dd if=/dev/zero of=test bs=64k count=16k conv=fsync
这个还算准确,数据已经写入磁盘;
dd if=/dev/zero of=test bs=64k count=4k oflag=dsync
这个可以当成是模拟数据库插入操作,所以很慢。

比较严谨的测试:
读测试
time dd if=/dev/sda1 of=/dev/null bs=8k count=8388608
结果如下:
8388608+0 records in
 8388608+0 records out
 68719476736 bytes (69 GB) copied, 221.005 seconds, 311 MB/s
 real    3m41.006s
 user    0m2.212s
 sys     0m35.851s
说明:因为/dev/sda1是一个物理分区,对它的读取会产生IO,/dev/null是伪设备,相当于黑洞,of到该设备不会产生IO,所以,这个命令相当于测试磁盘的读能力。

写测试
time dd if=/dev/zero of=/data/iotest bs=8k count=8388608
结果如下:
8388608+0 records in
 8388608+0 records out
 68719476736 bytes (69 GB) copied, 383.778 seconds, 179 MB/s
 real    6m36.327s
 user    0m2.524s
 sys     1m38.902s
说明:该命令需要先新建一个空文件,本命令中是/data/iotest。因为/dev/zero是一个伪设备,它只产生空字符流,对它不会产生IO,所 以,IO都会集中在of文件中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。注意:请根据磁盘剩余空间大小确认count参数。

读写测试
time dd if=/dev/sda1 f=/data/iotest bs=8k count=8000000
结果如下:
8000000+0 records in
 8000000+0 records out
 68719476736 bytes (69 GB) copied, 683.216 seconds, 95.9 MB/s
 real    12m11.475s
 user    0m2.615s
 sys     2m4.311s
说明:同时测试磁盘的读写能力。注意:请根据磁盘剩余空间大小确认count参数。

本篇文章来源于 centos配置教程|CentOS安装、配置、学习教程网站 原文链接:http://www.centos.ws/centos/linux/866.html

 

你可能感兴趣的:(LINUX下测试磁盘性能)