1773176252
2026-03-10 20:11:00
約3ヶ月前 私は一緒に働き始めました RISC-Fedora Linux の V ポート。その間、たくさんのことが起こりました。
トリアージ
通りました フェドーラ RISC-Vトラッカー
エントリ、ほとんどのエントリがトリアージされます (現時点では 17 エントリが残っています) 新しい)そして可能な限りの対応を試みました。
Fedora のパッケージング
私の通常の作業方法には、Fedora パッケージのソースを取得することが含まれます (fedpkg) そしてそれを構築します (
clone -afedpkg mockbuild -r fedora-43-riscv64)。しばらくしてから、ビルドされたかどうかを確認し、ビルドされていない場合はビルド ログを調べてその理由を調べます。
効果?現時点で、
Fedora パッケージに対して 86 件のプル リクエストが送信されました。 「llvm15」のような重いパッケージから「iyfct」(シンプルなゲーム)のようなシンプルなものまで。現時点では、それらのほとんどはマージされており、これらのほとんどは Fedora 43 用にビルドされています。その後、Fedora koji の「f43-updates」タグをたどるだけで、それらをビルドできるようになります。
遅さ
パッケージに関する作業は、速度という難しく、時には物議を醸すテーマをもたらします。というかそれが足りない。
ほら、 RISC-V ハードウェアは現時点では遅いです。その結果、ビルド時間が非常に長くなります。binutils 2.45.1-4.fc43 パッケージの詳細を確認してください。
| 建築 | コア | メモリ | ビルド時間 |
|---|---|---|---|
| アーチ64 | 12 | 46 GB | 36分 |
| i686 | 8 | 29 GB | 25分 |
| ppc64le | 10 | 37 GB | 46分 |
| riscv64 | 8 | 16 GB | 143分 |
| s390x | 3 | 45 GB | 37分 |
| x86_64 | 8 | 29 GB | 29分 |
また、言及する価値があるのは、現在のビルド RISC-V Fedora ポートは無効化されて実行されます LTO。メモリ使用量とビルド時間を削減します。
RISC-V ビルダーには、8、16、または 32 の 4 つまたは 8 つのコアがあります。 GB の ラム (基板により異なります)。そして、これらのコアは通常、Arm Cortex-A55 コアと比較されます。現在の Arm チップの中で最も低い CPU コア。
UltraRISC UR–DP1000 Milk-V Titan マザーボードにある SoC により、状況は少し改善されるはずです (64 個の SoC を搭載可能) GB ラム)。 SpacemiT K3 ベースのシステムと同様 (ただし 32 のみ) GB ラム)。どちらも改善にはなりますが、最終的な解決策ではありません。
「binutils」パッケージを 1 時間以内にビルドできるハードウェアが必要です。と LTO システム全体で有効になるなど、他の退屈なサーバーと同様にラックに収納可能で管理しやすい必要があります。それがなければ、計画を立てることさえできません。 RISC-V 64 ビット アーキテクチャは、Fedora Linux の公式の主要なアーキテクチャの 1 つになりました。
まだ使っています QEMU
このような長いビルド時間は、 QEMU 役に立つ。 80 個のエミュレートされたコアを使用すると、約 4 時間で「llvm15」パッケージをビルドできます。 Banana Pi の 10.5 時間と比較してください。 BPI-F3 ビルダー (P550 ビルダーの方が速いかもしれません)。
そして LLVM パッケージは、利用可能なコアとメモリの両方を実際に利用します。 Ampere One ベースのシステムの 192/384 コアではどれくらいの速度が出るのか気になります。
今後の予定
Fedora Linux 44 のビルドを開始する予定です。うまくいけば、すべてのビルダーで同じカーネル イメージを使用することになります (現在のビルダーでは、カーネル バージョンが混在して使用されています)。 LTO まだ無効になります。
スピードの不足に関しては…新しい、より速いビルダーを導入する計画があります。そしておそらく、より重いパッケージをそれらに割り当てます。
#RISCV #は遅い #Marcin #Juszkiewicz