Pages - Menu

Pages - Menu

Pages

2024年11月16日土曜日

従来のPythonよりもC言語並みの高速化とRust並みのハイセキュリティが可能な新たなプログラミング言語「Mojo」が開発される - GIGAZINE。

https://gigazine.net/news/20230508-mojo-programming-language/

https://gigazine.net/news/20230508-mojo-programming-language/


Appleのプログラミング言語「Swift」を生み出したクリス・ラットナー氏がCEOを務めるソフトウェア開発スタートアップのModularが、新たなプログラミング言語の「Mojo」を2023年5月3日に発表しました。Mojoはこれまでのプログラミング言語であるPythonの使用感とC言語並みの性能を合わせ持つ言語だとされています。

Mojo 🔥: Programming language for all of AI
https://www.modular.com/mojo


Modular Docs - Mojo🔥
https://docs.modular.com/mojo/


fast.ai - Mojo may be the biggest programming language advance in decades
https://www.fast.ai/posts/2023-05-03-mojo-launch.html



Modularは2023年5月3日に開催した製品発表イベントの中で、AI分野における同社の革新的な取り組みについて紹介し、従来よりも高速でスケーラブルなプログラミング言語である「Mojo」を発表しました。


イベントの中でModularが行ったデモの様子が以下。デモ動画の中では、全く同じコードがMojoとCPythonの両方で動作しており、互換性がMojoとPythonにあることが示されています。

Jeremy Howard demo for Mojo launch - YouTube


Modularは「Pythonの構文とエコシステムに、システムプログラミングとメタプログラミングの機能を組み合わせることで、テスト環境と本番環境の間のギャップを埋める新しいプログラミング言語がMojoです」と述べています。また「Mojoはまだ開発段階で、時間の経過とともに今後はPythonに対するスーパーセットとなるように設計されています」と報告しています。

さらに、シングルスレッドでの動作を行うPythonに対して、Mojoでは複数のコアにまたがる並列処理を行うことで高速化が実現可能です。マンデルブロ集合の演算を行った場合、Python3.10.9では1027秒を要し、Pythonの処理系の1つであるPyPyでは46.1秒、汎用(はんよう)プログラミング言語のC++では0.20秒を要した時間が、Mojoでは0.03秒に短縮され、Python3.10.9と比較した場合、約3万5000倍の高速化を行うことができると報告されています。


Mojoによる高速化の要因としては、マルチスレッド処理による並列処理の他に、並列計算を得意とするコンパイラ基盤であるMLIRの活用や、プログラミング言語におけるデータ型の構造体に制限を設けていることなどが考えられています。一方で、Mojoを単なるPython処理系としてそのままのコードで使用した場合、高速化はCPythonの数倍にとどまりますが、処理系を簡素化することで実行速度の高速化を行うC言語の汎用性や性能には及ばないことが指摘されています。一方で高水準言語であるMojoに合わせてコードを書き換えた場合、機械語やアセンブリ言語をはじめとする低水準言語のような速度で実行することが可能だとされています。

記事作成時点でMojoは開発段階で、Modularが公開するウェイトリストに登録してサインアップすることでMojoへのアクセスやフィードバックの送信が可能です。一方で、Modularがクローズドな環境でのMojoの提供を行うことに対して「Mojoを普及させるつもりがあるならばコードを公開するはずです。クローズド環境での提供を行うことは話題集めや投資家へのアピールなのではないでしょうか」と指摘する声も上がっています。

Modular: Get started today
https://www.modular.com/get-started

0 件のコメント:

コメントを投稿