嵌入式Linux中文站

Zstd显著提升Linux内核镜像压缩效率 5.9版有望将其合并进主线


Facebook 工程师 Nick Terrell 近日向 Linux 内核提交了使用 Zstd 压缩 Linux 内核镜像的补丁,这些补丁显示了使用 Zstd 对内核、ramdisk 和 initramfs 进行压缩操作具备巨大潜力。

Nick 发现,在 x86_64 硬件上,当初始 RAM 文件系统将压缩算法从 XZ 切换到 Zstd 时,解压时间从 12 秒下降到只需 3 秒,此次切换整体上还给系统的引导时间带来了两秒的改进。同样看到较大改进的场景包括从 LZMA 切换到 Zstd,Nick 在切换至 Zstd 的 Facebook 服务器上发现解压时间从 12 秒下降到了 8 秒。

相关基准测试结果可查看 https://lkml.org/lkml/2020/7/1/722

至于压缩率,Zstd 的压缩率要比内核使用的 Gzip 低,但比 XZ 和 LZMA 高。不过 Zstd 是除了 LZ4 之外,解压速度最快的算法。

根据目前的情况来看,内核对 Zstd 的支持有望在下一个版本中(Linux Kernel 5.9)实现。一旦 Zstd 进入内核主线,Nick 的后续计划是放弃对 BZ2 和 LZMA(1) 的支持。这将有助于清理更多的内核代码,因为 Bzip2 和 LZMA 目前并没有在内核树之外的其他地方使用。

本文永久更新链接:http://embeddedlinux.org.cn/emb-linux/industry-news/202008/01-9214.html



分享:

评论