如何测试我的 SSD 是否使用压缩?

如何测试我的 SSD 是否使用压缩?

我正在考虑在我的 SSD 上运行带有 btrfs 的文件系统。这可能会使磁盘使用寿命更长或运行速度更快,因为如果我们压缩文件系统,写入的内容就会更少。(我知道 NTFS 不是这种情况,因为 IIRC NTFS 必须先写入未压缩的文件,然后再压缩它)。但是,如果 SSD 本身使用压缩,则使用压缩文件系统不太可能以这种方式有所帮助。

我尝试了 smartctl,它告诉我它是带有固件版本 ZYA3 的 LZT-128,但我无法找到有关该驱动器是否使用压缩的信息。

我如何测试我的 SSD 是否使用了压缩?

答案1

我们可以尝试编写伪随机数据和易压缩数据。例如,使用脚本

( sync
  dd if=/dev/urandom count=1 bs=100M of=testfile.tmp
  time sync
  rm testfile.tmp
  dd if=/dev/zero count=1 bs=100M of=testfile.tmp
  time sync
) 2>&1 | grep real

该脚本首先写入 100MB 的随机数据,然后写入 100MB 的零,然后计算这些数据同步到磁盘所需的时间。

在 LZT-128 上,脚本首先给出

real    0m0.351s
real    0m0.306s

在接下来的运行中

real    0m0.304s
real    0m0.316s

由于这并没有显示出随机写入和归零写入之间的任何性能差异,这表明该驱动器未使用压缩。无论如何,这表明驱动器能够像未压缩一样快速写入少量压缩数据。

相关内容