Linux

时间:2015-06-19 11:37:31

标签: linux time dd

我想检查磁盘的读/写性能。我正在执行以下命令来写入文件

time dd if=/dev/zero of=/home/test.txt bs=2k count=32k;

,大约400MB / s

为了检查我在以下命令中执行的读取性能,有没有''参数。这些结果之间存在巨大差异

time dd if=/home/test.txt of=/dev/zero bs=2k (gives about 2.8GB/s)

time dd if=/home/test.txt bs=2k  (9MB/s)

我读到" = / dev / zero"用于在创建文件时从某个临时文件中读取数据。

但是为什么在检查读取性能时需要它以及为什么在有和没有" = / dev / zero"

的情况下速度存在巨大差异

2 个答案:

答案 0 :(得分:1)

/ dev / zero 是一个特殊文件。它的内容源于设备驱动程序。 / dev / zero 上的所有写操作都可以保证成功。更多关于herehere

的信息

未指定dd打印到stdout。因此,终端接收的数据必须被格式化和打印。您正在使用的终端很可能会阻碍您的硬盘性能。

此外,如果可能代表输入文件,同样意味着输出文件。

编辑:

写入 / dev / zero 会产生意外结果。我不会说这是衡量阅读性能的准确方法。

答案 1 :(得分:0)

您可以在读取操作中使用HDD和文件系统的缓存。尝试oflag =直接标志。