ハードウェア

AppleのMac向け独自開発チップ「M1」のGPUをリバースエンジニアリングするプロジェクトが進行中


Appleが開発した「M1」は、x86エミュレーション環境下でさえ他のMacを上回るベンチマーク結果を残しており、その高性能さを強く印象付けています。そんなM1のGPUをリバースエンジニアリングし、オープンソースドライバーを開発する試みが、エンジニアのAlyssa Rosenzweig氏らによって進められています。

Rosenzweig – Dissecting the Apple M1 GPU, part I
https://rosenzweig.io/blog/asahi-gpu-part-1.html

Rosenzweig – Dissecting the Apple M1 GPU, part II
https://rosenzweig.io/blog/asahi-gpu-part-2.html

M1は仕様が非公開であるため、Linuxで利用するにはリバースエンジニアリングによるドライバー開発が必須。Corelliumがリリースした「linux-m1」は、M1上で動作する初めてのLinuxですが、記事作成時点ではGPUサポートには至っていません。

corellium/linux-m1: Linux kernel source tree
https://github.com/corellium/linux-m1


そんなM1のGPUをLinuxでも動作させるべく、linux-m1と同じくM1上でのLinux動作を目指す「Asahi Linux」プロジェクトにて、Rosenzweig氏ら開発チームによるGPU解析が着々と進んでいます。

Rosenzweig氏はこれまでArm Cortexリリーズに搭載されているMali GPUの解析や、NVIDIA製GPU用のオープンソースドライバー「nouveau」の開発などに携わってきた人物。Rosenzweig氏によると、GPUの解析は「LD_PRELOAD」というLinuxの環境変数からioctlmmapなどのシステムコールを呼び出し、共有メモリ内のライブラリをダンプするのが基本であるとのこと。

Rosenzweig氏の解析により、M1のGPUの特徴がいくつか判明しています。そのひとつはアーキテクチャが「ひとつの命令でひとつのデータを操作する」SISDである点。通常、GPUは「ひとつの命令で複数のデータを操作する」SIMDによる並列処理を行いますが、M1のGPUはすべての処理をSISDで行っているとのこと。また、スケジューラーのハードウェア組み込みなど、コンパイラを簡素化するための工夫がなされているとRosenzweig氏は語っています。

Rosenzweig氏はこうした特徴を元に試行錯誤を経て、M1のGPUで三角形のレンダリングに成功しました。実際にM1のGPUでレンダリングした三角形の画像が以下。


Rosenzweig氏はこの成功について「画像をレンダリングするために必要なデータを正しく入力できた」ことを示すにすぎないとコメント。コードは動作しているものの、なぜコードが動いているのかといった、GPUの構造そのものに基づく理解はまだ進んでいないそうです。

なお、Rosenzweig氏らによるM1のGPU解析プロジェクトは以下のURLで進められています。

AsahiLinux/gpu: Dissecting the M1's GPU for 3D acceleration
https://github.com/AsahiLinux/gpu

・2022年9月30日追記
2022年9月に、Linux開発系VTuberの朝日リナ氏がAsahi Linux上でウェブブラウザや3DCGゲームが動作する様子を公開しました。

Apple製チップ搭載Mac対応Linux「Asahi Linux」でついにGUIアプリが動作、VTuberアバターの表示やFirefoxでのYouTube視聴が可能に - GIGAZINE

この記事のタイトルとURLをコピーする

・関連記事
Apple Silicon搭載Macでの動作を目指す「Asahi Linux」が登場 - GIGAZINE

Appleが開発した「M1」チップはなぜ高性能なのか - GIGAZINE

Apple独自開発の「M1」チップがベンチマークでGeForce GTX 1050 TiやRadeon RX 560を上回ったことが判明 - GIGAZINE

「M1チップ搭載Macが絶対欲しい」とLinuxの生みの親リーナス・トーバルズが絶賛 - GIGAZINE

Mozillaが「FirefoxをApple Siliconにネイティブ対応させるまでの苦難」を解説 - GIGAZINE

Appleの「M1」搭載Macレビューまとめ、「コンピューティング革命」や「信じられない偉業」など絶賛の嵐&今後のApple Siliconへの期待までてんこ盛り - GIGAZINE

in ソフトウェア,   ハードウェア, Posted by darkhorse_log

You can read the machine translated English article here.