高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性
今回は「高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性」についてご紹介します。
関連ワード (ネイティブ、早期、結果等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
Modular社はPythonの高速なスーパーセットと同社が位置づける開発中の新言語「Mojo」の、Appleシリコンにネイティブ対応したMac版をリリースしました。
Today is the day! Mojo for Mac is live! Download it right now!
Read our launch blogpost on how to get startedhttps://t.co/XSMkqUmHKt
— Modular (@Modular_AI) October 19, 2023
Mojoは9月に初めてローカル環境でコンパイルなどを実行可能なLinux対応のツール群を公開しています。今回のAppleシリコンにネイティブ対応したMac版のリリースは、このLinux版のリリースに続いて登場しました。
ちなみに現時点でWindowsでのMojoの利用はWindows Subsystem for Linux(WSL)を用いてLinux版を使う方法が示されており、Windows版のリリース時期はまだ明らかにされていないようです。
MojoはPythonより高速にAI処理を実現する
MojoはAI処理を高速に実行するための言語だと説明されています。Pythonとの互換性によって既存のTensorFlowやPyTorchなどをそのまま利用可能で、PythonよりもTensorFlowで最大3倍、PyTorchで最大25倍などの高速な処理を実現することで、AI処理の開発や実行のコスト削減などを実現するとしました。
さらにPythonのようなモダンなプログラミング言語の構文を用意しつつ、スタティックなメタプログラミングの能力も持ち、Rustのようなオーナーシップとライフタイムの仕組みを、より分かりやすく提供するとしました。
開発元のModular社は、コンパイラ基盤として広く使われているLLVM、Swift言語、GoogleがAI処理のために設計したCloud TPUなどの開発に関わってきたChris Lattner氏が共同創業者兼CEOを務めています。
Pythonより9万倍高速
Modular社は今回リリースされたMac版Mojoを用いて、Mojo社がApple MacBook Pro M2 Max上で行列の積を計算するベンチマークテストの結果を公開しています。
それによると、MojoはPythonよりも約9万倍高速に処理が行われています。
また、早期にModular社からMac版Mojoの提供を受けて、Meta社が公開した大規模言語モデル「Llma 2」をMac版Mojoに移植したAydun Tairov氏が、Llma 2の実行速度をPython、C、Mojoで比較しています。
その結果、Mojoによる並列処理ではC言語と比肩する性能を叩き出したことも明らかにされています。
Llama2.mojo performance on Mac is right up there with llama.cpp (!!!), and even outperforms plain C in many cases. This is insane! pic.twitter.com/MRjShiBvGl
— Aydyn Tairov (@tairov) October 17, 2023
これらの高速な実行は、スレッドを用いた高速な並列処理やSIMD命令の活用などが理由だと説明されています。
VSCodeの拡張機能も提供
Mac版Mojoのインストールは、ダウンロードページからユーザー登録の後に表示される画面で「Set up on Mac」を選択。パッケージマネージャのHomebrewを用いてインストール作業を行います。
Visual Studio Code上でシンタックスハイライトなどを提供する拡張機能も用意されているため、必要に応じて導入することが可能です。
Mojoはオープンソースではない
Mojoは現時点でダウンロード時にユーザー登録などが要求されるものの、無料で利用可能です。
ただしMojoはオープンソースとして開発されてはいません。同社は将来的に標準ライブラリなどをオープンソース化する可能性はあるとしながらも、Mojo全体のオープンソース化は明言していません。また、同社がMojoをどのように商用化するのかについての計画も示されていません。
Modular社がMojoをどのような形で商用化するのかは気になるところです。