dd磁盘io测试

时间:2024-04-06 21:48:09

测试纯写入性能

time dd if=/dev/zero of=test bs=4k count=10000 oflag=direct

测试纯读取性能

time dd if=test of=/dev/null bs=4k count=10000 iflag=direct

①、time有计时作用,dd用于复制,从if读出,写到of;

②、if=/dev/zero不产生IO,因此可以用来测试纯写速度;

③、同理of=/dev/null不产生IO,可以用来测试纯读速度;

④、将/tmp/test拷贝到/var则同时测试了读写速度;

⑤、bs是每次读或写的大小,即一个块的大小,count是读写块的数量。

oflag=direct将跳过内存缓存,direct 读写数据采用直接IO方式;

if=xxx 从xxx读取,如if=/dev/zero,该设备无穷尽地提供0,(不产生读磁盘IO)

of=xxx 向xxx写出,可以写文件,可以写裸设备。如of=/dev/null,"黑洞",它等价于一个只写文件. 所有写入它的内容都会永远丢失. (不产生写磁盘IO)。

dd测试是运维常用来测试磁盘读写性能的,配合iostat的一起使用观察磁盘性能。dd测试是顺序写入磁盘,结果是参考值,常用标准块4K测试,根据实际需要调整bs参数。测试时一定加direct值,无缓存测试。需要和线上正常磁盘比对,否则没有参考价值。

dd磁盘io测试