Open lartpang opened 5 years ago
dd
新买了个U盘,为了测试小读写速率,从https://linux.cn上找到了这篇文章,这里稍微记录下,方便回顾。
个人需求。
主要基于dd指令。
挂载上驱动盘,从终端进入此盘目录下。然后使用dd命令,首先写入number_of_blocks数量的block_size固定大小的块的一个文件,接着读取这个文件。dd命令通用语法格式如下:
number_of_blocks
block_size
dd if=path/to/input_file of=/path/to/output_file bs=block_size count=number_of_blocks
当写入到驱动盘的时候,我们简单的从无穷无用字节的源/dev/zero读取,当从驱动盘读取的时候,我们读取的是刚才的文件,并把输出结果发送到无用的/dev/null。在整个操作过程中, dd 命令会跟踪数据传输的速度并且报告出结果。
/dev/zero
/dev/null
首先让我们写入固态硬盘
$ dd if=/dev/zero of=./largefile bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 4.82364 s, 223 MB/s
这里使用的文件实际上是相当大的。你可以尝试用更小的尺寸如 64K 甚至是 4K 的。
现在读回这个文件。但是,得首先清除内存的缓存,以确保这个文件确实是从驱动盘读取的。
运行下面的命令来清除内存缓存。
$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
现在读取此文件。
$ dd if=./largefile of=/dev/null bs=4k 165118+0 records in 165118+0 records out 676323328 bytes (676 MB) copied, 3.0114 s, 225 MB/s
在 Arch Linux 的维基页上有一整页的关于不同的厂商,如英特尔、三星、Sandisk 等提供的各类固态硬盘 读/写速度的信息。点击如下的 url 可以查看相关信息。
https://wiki.archlinux.org/index.php/SSD_Benchmarking
首先把驱动盘插入端口,并挂载上,使其可读。然后从命令行下面进入挂载的文件目录下。
这个实验中,用dd命令向驱动盘写入一个有 10000 块,每块 8K 字节的文件。
# dd if=/dev/zero of=./largefile bs=8k count=10000 10000+0 records in 10000+0 records out 81920000 bytes (82 MB) copied, 11.0626 s, 7.4 MB/s
因此,写入速度约为7.5兆字节/秒。这是一个很低的数字。
把相同的文件读取回来,测试速度。首先运行如下命令清除内存缓存。
现在就可以使用dd命令来读取文件了。
# dd if=./largefile of=/dev/null bs=8k 8000+0 records in 8000+0 records out 65536000 bytes (66 MB) copied, 2.65218 s, 24.7 MB/s
读取速度出来大约是25兆字节/秒,这大致跟廉价 USB 驱动盘的标准相匹配吧。
Linux系统中使用
dd
命令测试USB和SSD硬盘的读写速度问题介绍
新买了个U盘,为了测试小读写速率,从https://linux.cn上找到了这篇文章,这里稍微记录下,方便回顾。
造成原因
个人需求。
解决方案
主要基于
dd
指令。挂载上驱动盘,从终端进入此盘目录下。然后使用
dd
命令,首先写入number_of_blocks
数量的block_size
固定大小的块的一个文件,接着读取这个文件。dd
命令通用语法格式如下:当写入到驱动盘的时候,我们简单的从无穷无用字节的源
/dev/zero
读取,当从驱动盘读取的时候,我们读取的是刚才的文件,并把输出结果发送到无用的/dev/null
。在整个操作过程中,dd
命令会跟踪数据传输的速度并且报告出结果。SSD
写入速度
首先让我们写入固态硬盘
这里使用的文件实际上是相当大的。你可以尝试用更小的尺寸如 64K 甚至是 4K 的。
读取速度
现在读回这个文件。但是,得首先清除内存的缓存,以确保这个文件确实是从驱动盘读取的。
运行下面的命令来清除内存缓存。
现在读取此文件。
在 Arch Linux 的维基页上有一整页的关于不同的厂商,如英特尔、三星、Sandisk 等提供的各类固态硬盘 读/写速度的信息。点击如下的 url 可以查看相关信息。
U盘
首先把驱动盘插入端口,并挂载上,使其可读。然后从命令行下面进入挂载的文件目录下。
写入测试
这个实验中,用
dd
命令向驱动盘写入一个有 10000 块,每块 8K 字节的文件。因此,写入速度约为7.5兆字节/秒。这是一个很低的数字。
读取测试
把相同的文件读取回来,测试速度。首先运行如下命令清除内存缓存。
现在就可以使用
dd
命令来读取文件了。读取速度出来大约是25兆字节/秒,这大致跟廉价 USB 驱动盘的标准相匹配吧。
参考链接