AIソフト開発向け言語Mojo発表 ―Pythonの使いやすさとC言語のパフォーマンスの組み合わせ

2023年5月2日、Modular Inc.はAIソフトウェア開発向けに最適化されたプログラミング言語「Mojo」を開発中であることを発表した。

MojoはPythonの使いやすさとCのパフォーマンスを組み合わせ、AIアクセラレーターにスケーリングするための新しい機能が追加された言語。Pythonは使いやすさと強力なライブラリ エコシステムでAI研究においてもっとも使用されているが、スケーラビリティに関する問題もあり、本番AIのデプロイはC++やCUDAなど他の言語で行われる場合もある。そのため、大規模なワークロードやエッジデバイス処理において、AIソフトウェアが断片化し、開発者の生産性低下や、研究から生産への移行に時間がかかるケースが見られている。Mojoはこれらの問題を解決し、AI開発者に大きな力をもたらすという。特徴は以下の通り。

すべてを1つの言語で記述
Mojoは使いやすいPythonの部分と、C、C++、およびCUDAを必要とするようなシステムプログラミング機能が組み合わされている。自動チューニングとメタプログラミング機能を備えた次世代コンパイラテクノロジーによって、プログラムに型を追加することでパフォーマンスが大幅に向上し、Rustのようなメモリ安全性をもたせることができる。
Pythonをはるかに超えるパフォーマンス
MojoはすべてのAIハードウェアへのアクセスを可能にするMLIR(Multi-Level Intermediate Representation)を使用している。 これにより、Mojoはスレッディング、およびTensorCoreやAMX拡張機能といった低レベルのハードウェア機能を使ってアクセラレーターを利用できる。同社によると、Mojoがハードウェア機能を最大限に活用し、マンデルブロのような数値アルゴリズムを実行する場合、Pythonよりも35,000倍高速に動作するという。
Pythonエコシステムを利用可能
Mojoは単にPythonライクな言語というだけではなく、Numpy、Pandas、Matplotlibなどのメジャーなライブラリをはじめ既存のカスタムPythonコードを含むPythonエコシステムへのアクセスも提供される。

Mojoは開発中のプロダクトだが、同社のアカウントにサインアップすることでJupyterHubベースのMojo Playgroundを使って試すことができる。

なお、Modular Inc.のCEOであるChris Lattner氏はAppleでSwiftやLLVMを開発したことで知られている。

おすすめ記事

記事・ニュース一覧