测试硬盘/内存的读写速度方法很多,下面介绍linux 自带的dd命令测试硬盘的读写速度
dd用于复制,从if读出,写到of。if=/dev/zero不产生IO,因此可以用来测试纯写速度。同理of=/dev/null不产生IO,可以用来测试纯读速度。bs是每次读或写的大小,即一个块的大小,count是读写块的数量。
测试纯写速度
[root@localhost shm]# dd if=/dev/zero bs=10k of=/dev/shm/test.b count=100000 记录了100000+0 的读入 记录了100000+0 的写出 1024000000字节(1.0 GB)已复制,0.707544 秒,1.4 GB/秒测试纯读速度
[root@localhost shm]# time dd if=/home/test.a of=/dev/null bs=8k count=10000 记录了10000+0 的读入 记录了10000+0 的写出 81920000字节(82 MB)已复制,0.0346547 秒,2.4 GB/秒在前面加上time会显示计算复制的时间
[root@localhost shm]# time dd if=/dev/zero bs=10k of=/dev/shm/test.b count=100000 记录了100000+0 的读入 记录了100000+0 的写出 1024000000字节(1.0 GB)已复制,0.707544 秒,1.4 GB/秒 real 0m0.737s user 0m0.009s sys 0m0.727s real时间是指挂钟时间,也就是命令开始执行到结束的时间。这个短时间包括其他进程所占用的时间片,和进程被阻塞时所花费的时间。user时间是指进程花费在用户模式中的CPU时间,这是唯一真正用于执行进程所花费的时间,其他进程和花费阻塞状态中的时间没有计算在内。sys时间是指花费在内核模式中的CPU时间,代表在内核中执系统调用所花费的时间,这也是真正由进程使用的CPU时间。参数解释:
bs:操作块大小count:操作次数,可理解为并发数链接:https://blog.csdn.net/gzh0222/article/details/7615050 https://blog.csdn.net/qq_18941425/article/details/81206484