
2026/03/11 5:11
RISC‑V はとても遅いです。
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
著者は約3か月にわたりFedora LinuxのRISC‑Vポートに取り組んでいます。この期間中、86件のプルリクエストが処理され、ほとんどが「f43‑updates」Kojiタグを使用するFedora 43ビルドで正常にマージされています。NEWステータスのトラッカー残りは17件だけです。
ビルドは4–8コア、8–32 GB RAMを備えたビルダー上で実行され、メモリ消費を抑えるためLTOは無効化されています。RISC‑Vハードウェアは顕著に遅く、binutils 2.45.1‑4.fc43のビルドには143分かかりますが、他のアーキテクチャでは約30–46分です。UltraRISC UR‑DP1000(最大64 GB RAM)やSpacemiT K3システム(32 GB)でも同様です。80コアをエミュレートしたQEMUを使用するとllvm15のビルド時間は約4時間に短縮され、Banana Pi BPI‑F3では約10.5時間かかります。LLVMパッケージは特にCPUとメモリを大量に消費するため、著者は192/384コアのAmpere Oneサーバーでテストすれば大幅な速度向上が期待できると見込んでいます。
Fedora 44への計画では、すべてのビルダーで同一カーネルイメージを使用し(LTOは引き続き無効化)、より高速な新規ビルダーを追加して重いパッケージに対応します。ハードウェアやLTOサポートが改善されない限り、RISC‑V 64‑bitはFedora Linuxの主要アーキテクチャになる可能性は低く、性能が制限されるだけでなく、RISC‑Vソリューションを構築する企業による採用意欲も抑制される恐れがあります。
本文
約3か月前に Fedora Linux の RISC‑V ポートでの作業を開始しました。
その間に多くのことが起きました。
トリアージ
Fedora RISC‑V のトラッカーエントリを確認し、ほとんどをトリアージ(現在 NEW に残っているものは 17 件)して、可能な範囲で処理しました。
Fedora パッケージング
私の通常のワークフローは次の通りです:
- Fedora パッケージのソースを取得
fedpkg clone -a - ビルドする
fedpkg mockbuild -r fedora-43-riscv64 - ビルドが成功したか確認し、失敗した場合はビルドログを調査して原因を突き止めます。
成果: Fedora パッケージに対して 86 件のプルリクエストを送信しました。
重いパッケージ(llvm15)から、単純なもの(小さなゲーム iyfct)まで幅広く対象としています。ほぼすべてがマージされ Fedora 43 でビルド可能となりました。これにより
f43-updates タグをフォローしながら Fedora Koji でビルドできます。
スローペース
パッケージ作業では「速度」という硬直した、時には論争のあるテーマが浮上します。現在の RISC‑V ハードウェアは遅く、ビルド時間も長いです(例:binutils 2.45.1-4.fc43 パッケージ):
| アーキテクチャ | コア数 | メモリ | ビルド時間 |
|---|---|---|---|
| aarch64 | 12 | 46 GB | 36 min |
| i686 | 8 | 29 GB | 25 min |
| ppc64le | 10 | 37 GB | 46 min |
| riscv64 | 8 | 16 GB | 143 min |
| s390x | 3 | 45 GB | 37 min |
| x86_64 | 8 | 29 GB | 29 min |
RISC‑V Fedora ポートはメモリ使用量とビルド時間を削減するために LTO(Link Time Optimization)を無効化しています。
RISC‑V ビルダーは4〜8 コア、8–32 GB の RAM(ボードによって異なります)が装備されており、Arm Cortex‑A55 コアと同程度の性能です。
Milk‑V Titan マザーボード上の UltraRISC UR‑DP1000 SoC では最大 64 GB RAM が利用できるため、多少改善が期待できます。SpacemiT K3 ベースのシステムは最大 32 GB まで拡張可能です。これらは進歩ですが、最終的な解決策には至りません。
binutils パッケージを LTO を有効にしたまま 1 時間以内でビルドできるハードウェアが必要です。そうでなければ、RISC‑V 64‑bit が Fedora Linux の公式アーキテクチャの一つになる計画は立てられません。
QEMU はまだ使用中
長時間にわたるビルドでは QEMU の利用が有効です。80 コアをエミュレートすれば、llvm15 パッケージを約 4 時間でビルドできます(Banana Pi BPI‑F3 ビルダーでは 10.5 時間かかります。P550 上ではさらに速くなる可能性があります)。
btop ではすべての 80 コアが稼働していることが確認できます。
LLVM パッケージは利用可能なコアとメモリを十分に活用します。Ampere One ベースのシステムで 192/384 コアがあれば、どれほど速くなるか想像できます。
今後の計画
Fedora Linux 44 のビルドを開始する予定です。うまく進めば、すべてのビルダーで同一カーネルイメージ(現在はバージョンが混在)を使用します。LTO は引き続き無効化されます。
速度面では、新しく高速なビルダーを導入し、より重いパッケージを割り当てる計画があります。