目前的 RISC-V SoC 比较其他 CPU 架构要慢得多,这导致 Fedora 包的构建时间要长得多。尽管下一代 RISC-V 处理器有望更快,但目前编译 Binutils 时的速度仅为 x86_64 的五倍左右,这是因为禁用了 RISC-V 的编译时优化 (LTO),以避免构建时间更长。
Red Hat 的 Marcin Juszkiewicz 长期以来专门研究 ARM64 Linux,他一直在为 Fedora Linux 开发 RISC-V 软件包。他今天关于这个主题的最新博客文章的标题是“RISC-V 很慢 ”。

RISC-V 设计的 Linux 时间结果是“可怕的时间”,以 GNU Binutils 的时间为例。在 x86_64 上使用 8 处核心编译 Binutils,约为 29 分钟,包括 LTO 计算机优化,而沒有 LTO 的 RISC-V设计的 Binutils 编译时间为 143 分钟,即沒有 LTO。编译Binutils 的最慢的架构是 POWER PPC64LE,为 46 分钟。AArch64 软件在 36 分钟,i686 软件在 25 分钟,是最快速的。
Juszkiewicz 在他的博客中评论道:
“Milk-V Titan 主板上的 UltraRISC UR-DP1000 SoC 应该会稍微改善一下情况(可以有 64 GB 内存)。类似于基于 SpacemiT K3 的系统(但只有 32 GB 内存)。这两者都会有所改进,但不是最终解决方案。
我们需要能够构建在“binutils”软件包之上的一小时硬件。在 LTO 启用的系统中,等等。它需要像其他无聊的服务器一样可伸缩和可管理。如果没有它,我们甚至无法计划 RISC-V 64 位架构成为 Fedora Linux 的官方主架构之一。”
由于当前的 RISC-V SoCs 很慢,因此 QEMU 被用来帮助弥补硬件的缓慢。使用 80 个模拟的 RISC-V 核心可以在 QEMU 下编译 LLVM,大约需要 4 小时,而使用 Banana Pi BPI-F3 构建器时需要超过 10 小时。
Marcin 的 博客文章 以以下内容结束:
“我们计划开始构建 Fedora Linux 44。如果一切顺利,我们将使用相同的内核映像在所有构建器上运行(当前的内核映像混合使用了多个内核版本)。LTO 将会继续被禁用。
说到速度问题…计划引进更快的建造者。而且可能还会把一些较重的包交给他们。”
转自 Current RISC-V CPUs Being Too Slow Causes Headaches For Fedora: ~5x Slower Builds – Phoronix
Linuxeden开源社区