Apple が 2 年前に、強力な AArch64 プロセッサとカスタム設計のグラフィックス プロセッサを搭載したラップトップおよびデスクトップ向けの自社製 Apple Silicon として M1 を発表して以来、Apple M1 (および現在の M2) グラフィックスがクリーンかどうかについて多くの憶測が飛び交っています。-sheet Apple デザイン、または Apple が以前の SoC で使用していた Imagination PowerVR グラフィックスから派生したもの。 Linux での Apple M1/M2 の有効化に取り組んでいる Asahi Linux チームといくつかの類似点が以前に持ち出されましたが、最新の Mesa ドライバーのアクティビティは、PowerVR グラフィックス ハードウェアと Apple AGX グラフィックスの間のより一般的な部分を示しています。
Asahi Linux チームによる作業と、オープンソースの GPU ドライバー サポートに関する彼らの野望を含む、Linux の Apple Silicon サポートのリバース エンジニアリングへの彼らの作業のおかげで、Apple グラフィックスが何らかの系譜を引き継いでいる兆候が引き続き見られます。 PowerVRに。
昨日私の注意を引いたのは、次の Mesa マージ リクエストでした。 Mesa PowerVR ドライバーからの情報。 Apple オープンソースの Mesa Gallium3D/OpenGL ドライバー サポートに関する作業を主導してきた Alyssa Rosenzweig は、その MR で次のように説明しています。/)、AGX の「タグ付き」データ構造は、実際には、どの状態が続くかを指定するヘッダーが前に付いた一連の状態項目であることがわかります。 Apple のドライバーが状態をバンドルするために選択するシーケンスをハードコーディングするのではなく、有効な状態の組み合わせをエンコードまたはデコードするのに十分柔軟な XML が必要です。つまり、XML を作り直すということです。そうしているうちに、RGX と AGX の間で同一の多くのフィールドが見つかり、その間に名前を修正します (たとえば、W クランプ浮動小数点)。
適切な場合、名前は Mesa の PowerVR コードに由来します。
…
今年初めに Imagination がオープンソースの PowerVR Vulkan ドライバーを公開して以来、この洞察が可能になりました。このドライバーはメインラインの Mesa に統合されました。 (Imagination は、PowerVR Rogue 用のオープンソース DRM カーネル グラフィックス ドライバーにも取り組んでいます。) その PowerVR Mesa コードを見て、Apple グラフィックス ハードウェアとの最新の類似点が発見されました。確かに、それは限られた範囲のものであり、Apple M1/M2 グラフィックスが PowerVR IP から派生したものであることが最終的にどの程度まで明確ではない.
現在 Apple M1/M2 で (Asahi) Linux を実行しているということは、オープンソース GPU ドライバーの取り組みが Mesa コードと開発中のカーネル Direct Rendering Manager ドライバーの両方でさらに進むまで、LLVMpipe CPU ベースのソフトウェア ラスター化を意味します。
Apple のオープンソース グラフィックス ドライバの作成とエンジニアリング作業は、現在も進行中です。最新の目標は、2022 年末までに OpenGL 2.1 をサポートすることですが、DRM カーネル ドライバーがメインライン カーネルにアップストリームされるまでにはそれ以上の時間がかかる可能性があります。