elfshaker高效存储二进制对象
elfshaker 是一个低占用空间、高性能的版本控制系统,针对二进制文件进行了微调。
-
elfshaker 是一个用 Rust 编程语言编写的 CLI 工具。
-
它将目录快照存储到高度压缩的包文件中,并提供对存储文件的快速按需访问。它特别适合存储大量类似的文件,例如来自增量构建的目标文件。
-
它允许使用 manyclangs 项目在几秒钟内访问任何 clang 提交。例如,这将LLVM的二分加速了 60 倍!这是通过从本地存储的 elfshaker 包中按需提取 LLVM 构建来完成的,每个包包含约 1,800 个构建,大小约为 100 MiB,即使完整的原始文件需要 TiB 来存储!在现代硬件上提取单个构建需要 2-4 秒。
评论