红帽公司的 Rust 开发者Josh Stone 在上周五发表邮件称,在编译相同的代码库时,LLVM 10.0 编译其 Git master 主分支代码不仅花费了更长的构建时间,而且生成了更多的指令。
Josh 和其他开发者发现,与使用 LLVM 9.0 相比,LLVM 10.0 会导致 Rust 编译时间变慢 7~8%。在邮件列表的一个帖子中,他指出从 LLVM 9.x 到 10.x 在测试代码库上生成的指令大约多了 5.3%,而从 LLVM 10.x 到 LLVM 11 Git master 分支,此项数据又增加了 4.8%。
这个问题目前尚未被解决,不过多个 Rust 开发者在 LLVM 10 中重现了同样的行为并得出相似的结果,并且从数据上看,问题对性能的影响比较大,希望不久后可以解决。