Raspberry Pi について話すとき、私たちは通常、ささやかな DIY プロジェクトや IoT アプリケーションを思い浮かべます。しかし、このミニで Doom 3 を 4K でプレイしてみてはどうでしょうか?これは、Jeff Geerling 氏がゲーム用 GPU を Raspberry Pi 5 に接続することで達成した課題です。
Jeff Geerling は Raspberry Pi の愛好家であり、彼はその偉業を達成したAMD Radeon RX 460 グラフィックス カードを Raspberry Pi 5 に接続します。
まず、Raspberry Pi 5 が外部グラフィックス カードに対応するように設計されていないことを理解しておく必要があります。 PCI Express 2.0 レーンが 1 つあり、通常は M.2 SSD の接続に使用されます。ここに私たちは課題を見出します。
私たちの男性は Pi の M.2 スロットを使用し、M.2 - Oculink アダプターを使用して外部 GPU ドックに接続しました。
しかし、それは課題の始まりにすぎませんでした。 Pi の PCIe ポートは 5W の電力しか供給しませんが、デスクトップ グラフィックス カードは 75W を必要とするため、Geerling は GPU とポート自体の外部電源をいじる必要がありました。
ハードウェアが配置されると、Geerling はソフトウェア部分に取り組みました。最初のステップ: パッチを適用して、Pi の PCIe レーンをバージョン 2.0 から 3.0 にアップグレードします。
次に、オープンソースの AMDGPU ドライバーを組み込むために Linux カーネルを更新する必要がありました。このドライバーは Raspberry Pi の Arm アーキテクチャをサポートし、RX 460 をサポートするため、これは不可欠でした。Jeff Geerling がこの特定のボードを選択したのは、このボードが有用であるには十分に新しいものの、ドライバーのサポートが成熟しているため十分に古いためです。
これらのパッチをすべて適用し、カーネルを再コンパイルしたら、AMD のグラフィックス ファームウェアをインストールすると、グラフィックス出力と 3D アクセラレーションがほぼ正常に動作できるようになりました。
印象的な結果ですが…
この大規模な作業の結果、どのような結果が得られるでしょうか?彼は、RX 460 を搭載した Raspberry Pi 5 で Doom 3 と Tux Racer を 4K で実行することに成功しました。
Pi OS UI は 4K でスムーズに動作しました。これはすでに成果です。ただし、すべてが完璧だったわけではありません。 Chromium ブラウザのグラフィック アクセラレーションと、GPU アクセラレーションによるビデオ エンコードおよびデコードのサポートが正しく動作しませんでした。
そして、ここでの成果はどこにあるのでしょうか? ARM SoC での専用 GPU の使用における進歩が示されました。 Snapdragon チップに大型の Radeon GPU が搭載されることは想像できます。これにより、組み込みコンピューティングとミニ PC の将来の展望が開かれます。