世界を動かす技術を、日本語で。

Apple M1 GPUの解剖、終わり

概要

  • Apple M1登場後、Linux対応とGPUリバースエンジニアリングの挑戦
  • Asahi Linuxプロジェクトの始動と主要メンバーの活躍
  • OpenGL/Vulkan等のグラフィックスドライバ開発と業界標準適合
  • ProtonによるWindowsゲームのLinux対応実現
  • 主要目標達成後、次の挑戦への意欲

Apple M1とAsahi Linuxプロジェクトの始まり

  • 2020年12月、Apple M1 がリリースされ、独自GPU搭載を受けてLinux移植とハードウェア解析開始
  • Hector Martin がAsahi Linuxを立ち上げ、オープンソースコミュニティへ協力要請
  • Collabora でPanfrost(Arm Mali向けMesa3Dドライバ)開発中、協力に参加
  • 個人的な興味から Apple GPUのシェーダ命令セット を解析、最初の三角形描画に成功
  • OpenGLドライバとシェーダコンパイラ の自作、短期間でOpenGLギア描画まで実現

ドライバ開発とコミュニティの進展

  • 継続的なリバースエンジニアリングで 3Dゲーム動作 をmacOS上で達成
  • Asahi Lina によるApple GPUカーネルドライバ開発
  • ユーザー空間のOpenGLドライバとカーネルドライバで オープンソースグラフィックススタック が完成
  • 2022年12月、Asahi Linuxでグラフィックスアクセラレーション を正式リリース

Panfrostとキャリアの転換

  • 2017年、高校時代からMali Midgard GPU解析 を開始
  • 2019年Collaboraインターン、その後4年間Panfrost開発に従事
  • Panfrostは 個人プロジェクトからプロフェッショナルなドライバ に成長
  • 新たな挑戦 としてM1向けの完全なOpenGLドライバ開発を決意

業界標準への挑戦とProton対応

  • Appleのドライバは業界標準(OpenGL/Vulkan)非準拠、標準準拠ドライバ開発を目指す
  • Proton(Valve/Steam Deck)によるWindowsゲームのLinux動作 をM1でも実現
  • 2023年、OpenGL 3.1/ES 3.1準拠達成、Panfrostと同等の機能到達
  • OpenGL (ES) 3.2以降のジオメトリシェーダ等、業界初のエミュレーション実装
  • 2024年1月、OpenGL 4.6準拠達成、Vulkan 1.3も短期間でコンフォーマンス取得

最終成果と今後

  • Proton対応でDirect3Dゲーム動作、OpenCL 3.0もKarol Herbstの協力で準拠
  • Vulkan 1.4仕様公開と同時に準拠版リリース、Sparse Texture対応でDirect3D 12も解禁
  • すべての目標(OpenGL 4.6, OpenGL ES 3.2, OpenCL 3.0, Vulkan 1.4, Proton)を達成
  • Mesa本家に全ドライバが統合、性能も良好
  • LunarG KosmicKrispプロジェクト がmacOS向けVulkan準拠実装を展開
  • Appleエコシステムからは一旦撤退、 Asahi Linuxコミュニティにバトンタッチ
  • 新たな挑戦への意欲

Hackerたちの意見

なんて時代の終わりなんだろう。彼女が18歳でこの旅を始めて、5年後に終わったなんて信じられない。GPUをAsahi Linuxで動かせるなんて、あまり信じてる人はいなかったよね。彼女の「次の挑戦へ!」ってリンク、何を意味してるんだろう。次はIntel Xe-HPGで働くのかな?

そう思うよ。彼女の履歴書には、今月からIntelでオープンソースのグラフィックドライバーに取り組んでるって書いてあった。

「よくやったね!」っていう言葉以外にあまり言うことはないな。それと、次が楽しみだね。

彼女がAsahi Linuxから離れたのは良かったと思う。技術的には素晴らしいし、チームの進展もすごいけど、彼女みたいな才能ある人が、クソみたいな反消費者企業のソフトウェアやハードウェアを逆エンジニアリングする必要はないと思う。ドキュメントを公開するだけでプロジェクトが一瞬で動くのに、ゼロからより良いものを作る方がいいよね。

ゼロからより良いものを作る代わりに 公平に言うと、たとえ最高のCPUやGPUデザイナーがいても、TSMCに電話して最新のプロセスで新しいプロセッサを作ってもらうのは無理だよね。自宅でファブすることもできないし。

大きな目標を立てて、忙しいスケジュールの中で見事に実行したね。お疲れ様!

すごいね。彼女は23歳で、業界で10年以上いる俺よりも多くのことを達成してる。才能あるエンジニアだな。

あなたが誰かは全然わからないけど、正直言って彼女は私が一生で達成する以上のことを成し遂げてるよ。私は業界に何十年もいるけどね。

ちょっと話を横取りしてごめんけど、関連する話題だから聞きたいんだ。Asahi Linuxの開発はまだ活発に進んでるの?それともかなり鈍化しちゃった?M1とM2の進展は順調だったけど、今はほとんど終わってるみたいで、M3+の作業はまだ始まってないみたい。主要な貢献者がプロジェクトを離れてるから、Asahiの未来が心配なんだ(新しいAppleハードウェアに関して)。

Redditの議論から知ったんだけど、開発者たちはまずM1/M2の全てをカーネルにアップストリームすることを目指してるみたい。で、https://asahilinux.org/2025/08/progress-report-6-16/によると、

「Linux 6.16では、かなりクールなマイルストーンに到達しました。最初の進捗報告では、1200以上のパッチをダウンストリームで持っていると述べました。私たちのブランチで少し整理をして、今までのものをアップストリームした結果、その数は何年ぶりかで初めて1000未満になりました。つまり、わずか5ヶ月で全体のパッチセットの20%以上をアップストリームできたということです。DCPやGPU/Rustのパッチを除外すると、その割合はほぼ半分に跳ね上がります!」 だから、もしこの議論が本当なら、開発者たちがM1/M2のアップストリームを終わらせるのに何年もかかるかもしれないね。まあ、M3に取り掛かることを決めない限りだけど。

M3+ GPUもかなり違うからね。だから、OPが言うようにM1/M2のドライバー開発がほぼ完了しているとしても、今後も同じような作業が必要になるのは間違いないね。

最新のAppleのノートパソコンでフル機能のLinuxが動くなら、簡単に年に100〜200ドル払うよ。私だけじゃないと思う。彼らのハードウェアと「私たち」のOSは完璧だよね。まあ、ノッチとOLEDがないのは残念だけど、報告によればそれも進行中らしいし。

新しいリーダーシップチームは、既存の作業をアップストリームする短期目標を設定したみたいで、うまくいってるみたい。

「私たちの優先事項はカーネルのアップストリームです。私たちのダウンストリームLinuxツリーには、まだアップストリームLinuxに入っていないApple Silicon用の1000以上のパッチが含まれています。アップストリームカーネルは速く動くので、常に私たちの変更をアップストリームの上にリベースし続ける必要があり、マージコンフリクトやリグレッションと戦っています。Janne、Neal、marcanは何年も私たちのツリーをリベースしてきましたが、パッチが多すぎて大変です。もっと追加する前に、持続可能な長期的な運営のためにパッチスタックを減らす必要があります。」 https://asahilinux.org/2025/02/passing-the-torch/ 「Linux 6.16では、かなりクールなマイルストーンに到達しました。最初の進捗報告では、1200以上のパッチをダウンストリームで持っていると述べました。私たちのブランチで少し整理をして、今までのものをアップストリームした結果、その数は何年ぶりかで初めて1000未満になりました。つまり、わずか5ヶ月で全体のパッチセットの20%以上をアップストリームできたということです。DCPやGPU/Rustのパッチを除外すると、その割合はほぼ半分に跳ね上がります!まだまだ道のりは長いけど、この進展のおかげでリベースがかなり楽になって、少し余裕もできました。」 https://asahilinux.org/2025/08/progress-report-6-16/

著者は「不可能」なハードウェアで現代のグラフィックスAPIをスピードランして、そのまま去っていった感じ。完全にマイクドロップだね。

アリッサがAppleで働かなかったのはちょっと驚きだね(インテルの代わりに)。

もしかしたら、彼女はそうしたくないのかもね。

彼らはフリーソフトウェア財団(FSF)と密接に連携しているみたいだから、Appleと一緒に働きたくない大きなイデオロギー的理由があるんじゃないかな。確かにAppleは時々パッチを上流に送ったり、オープンソースに貢献したりもするけど、FSFの模範的存在とは言えないよね。一方、Intelはグラフィックス分野に関してはかなりオープンだと思う。個人的にはロゼンツワイクの仕事にただただ感心してるし、これからも彼らが成長できる環境を見つけて素晴らしいことを成し遂げていくことを願ってるよ。

もしかしたら、彼女はleetcodeの面接に合格しなかったのかも。 :p

彼女には大きなリスペクトを感じるよ。自分は才能あるソフトウェアエンジニアだと思ってるけど、彼女の業績には全然及ばないな。

このプロジェクトはずっと理解できなかったな。何か見落としてるかもしれないけど、完成する頃にはその製品はもう売られてないって感じだよね。少なくともPanfrostはまだ使われているから意味があったけど、M1チップのノートパソコンは今や中古でしか買えないし。

プロジェクトの価値を考えると、新品で製品が手に入らなきゃいけない理由って何なの?まだM1チップはたくさんあるし、それによってそのチップの有用性が延びるのは助かるよ。