llama2.mojo は llama2.c より 20% 高速です。最も新しい言語 Mojo が開発者コミュニティを驚かせています

llama2.mojo は llama2.c より 20% 高速です。最も新しい言語 Mojo が開発者コミュニティを驚かせています

Python が最も人気のある言語であり、C が最も古典的な言語であるとすれば、Mojo にはその最高の言語、つまり最も新しい言語もあります。 Mojo は Python とシームレスに統合でき、その誕生は「ここ数十年で最大のプログラミングの進歩」と呼ばれています。

画像ソース: https://www.modular.com/blog/mojo-its-finally-here

Mojo が 5 月にリリースされて以来、120,000 人を超える開発者が Mojo Playground の使用に登録しており、19,000 人を超える開発者が Discord や GitHub で Mojo について活発に議論しています。 9月7日、ModularはMojoがローカルダウンロードで利用可能になると発表しました。 Mojoの当初の目標は、Pythonの35,000倍の高速化でした。最近、チームは、Mojoが動的言語と静的言語の利点を組み合わせることで、Pythonの68,000倍のパフォーマンス向上を実現したと述べました。

モジョ

Mojo は AI 開発者向けの新しいプログラミング言語であり、すでにあらゆる Python コードとのシームレスな統合をサポートしており、Python のスーパーセットへと成長する予定です。 Mojoの「魅力」を振り返ってみましょう。

  • すべてを 1 つの言語で記述: Mojo は、Python の使いやすさとシステム プログラミングのパワーを組み合わせて、AI 開発者のニーズを満たします。これにより、研究チームと展開チームは共通のコード ベースで作業できるようになり、ワークフローが合理化されます。
  • Python のパフォーマンスを最大限に引き出す: Python はどこにでもありますが、高いパフォーマンスや特殊なハードウェアを必要とするタスクの場合、Python は最適なツールではありません。 Mojo は CPU 上で高いパフォーマンスを実現し、GPU や ASIC などの特殊なアクセラレータをサポートして、C++ や CUDA に匹敵するパフォーマンスを提供します。
  • Python エコシステム全体へのアクセス: Mojo は Python エコシステムとの完全な相互運用性を提供し、Mojo の機能とパフォーマンスを活用しながら Python ライブラリをシームレスに使用できます。

Mojo ローカル ダウンロードによって提供されるツールボックスを使用すると、開発者が作業を開始しやすくなります。 Mojo SDK の初期リリースには、次のツールが含まれています。

  • Mojo ドライバー: シェル (読み取り評価印刷ループまたは REPL 用) を提供し、Mojo プログラムの構築と実行、Mojo モジュールのパッケージ化、ドキュメントの生成、コードのフォーマットを可能にします。
  • Visual Studio Code (VS Code) 拡張機能: 構文の強調表示、コードの自動補完などの機能をサポート
  • Jupyter カーネル: Python コードを含む Mojo ノートブックの構築と実行のサポート
  • デバッグサポート(近日提供予定):実行中のMojoプログラムにステップインして検査し、C++とMojoのスタックフレームを混在させることもできます。

つい最近、Mojo コミュニティのメンバーが Python プログラムを Mojo に移植しました。結果はどうでしたか?

ラマモジョ

プロジェクトアドレス: https://github.com/tairov/llama2.mojo

Mojo のリリースに伴い、この Mojo コミュニティ メンバーは llama2.py を Python から Mojo に移植することを思いつきました。 Karpathy の llama.c よりもすでに 20% 高速です。そして、このスピードはこれで終わりではなく、将来的にはさらに速くなる可能性があります。

llama2.py、llama2.c、llama2.mojo の視覚的な比較

このバージョンでは、Mojo の SIMD とベクトル化プリミティブを活用して、Python のパフォーマンスを約 250 倍向上させます。高速実行モードでも、Mojo バージョンはオリジナルの llama2.c よりも 15 ~ 20% 優れたパフォーマンスを発揮します。これは、Mojo の高度な機能によるハードウェア レベルの最適化の可能性を示しています。これにより、元の llama2.c ハードウェア最適化に基づいてどこまで実現できるかを誰もが理解できるようになります。

パフォーマンスデータの比較

もちろん、メンバーはオペレーティングシステムとハードウェアの詳細も公開しました。

この性能比較を見て、ネットユーザーたちはMojoが確かにその「強さ」を示したことに感嘆の意を表した。

しかし、一部のネットユーザーは異なる意見や別の探究の方向性を主張している。

Llama.c は、高速に実行するように調整されているのではなく、ファイル内のコードを理解するように調整されています。 llama.cpp と比較するとどうでしょうか?

モジョと彼の後ろにいるボス

Modular AI は、グローバル ML インフラストラクチャの再構築を目標に 2022 年に設立されました。LLVM と Swift プログラミング言語の共同創設者である Chris Lattner によって設立され、1 億ドルの資金を調達したばかりでした。クリス・ラトナー氏は、この資金は製品の拡張、ハードウェアのサポート、自社開発のAIプログラミング言語Mojoのさらなる開発を促進するために使用されると述べた。

クリス・ラトナー

Chris Lattner はポートランド大学のコンピュータサイエンス学部を卒業し、LLVM、Clang、MLIR、CIRCT などのコンパイラ インフラストラクチャ プロジェクトを含む、いくつかの有名な大規模プロジェクトの作成と主導の経験があります。また、Swift プログラミング言語の作成も主導しました。彼はアップルの開発ツール部門で勤務し、テスラの副社長も務めた。 2017 年 8 月、彼は Google Brain チームで、さまざまなハードウェア サポート (CPU、GPU、TPU)、基盤となるランタイム、プログラミング言語の作業を含む TensorFlow インフラストラクチャ作業を主導しました。

llama.mojo のパフォーマンス比較が公開された後、Chris Lattner 氏は Twitter で、Mojo がローカルダウンロードで利用できるようになるまであとわずか 3 日だったことを嘆きました。

<<:  GPTは「贅沢」すぎるが、代替案が多数用意されており、展開の問題を心配する必要はもうない

>>:  登ったり、ジャンプしたり、狭い隙間を通り抜けたり:オープンソースの強化学習戦略により、ロボット犬がパルクールを行えるようになる

推薦する

疫病流行中の人間の行動にAIが混乱!データ変更による作業の「異常」は手動での制御が必要

[[327938]]ビッグデータダイジェスト制作著者: 劉俊環半年前に Taobao をオープンした...

5分で様々な人工知能技術を紹介

人工知能は、コンピューターが人間と同様のレベルの知能を発揮できるようにするさまざまな技術を網羅する幅...

C#アルゴリズムで解決した面接の質問

C# アルゴリズムはプログラマーの面接でよく出題されますが、C# アルゴリズムを使用してそれをどのよ...

人工知能の革新はいかにしてより賢いロボットの進化につながるのか

ロボットはコンピューターによってプログラムされた機械です。人間の介入なしに一連の複雑なアクションを自...

マイクロソフト、クラウド移行のための企業向けビジネス管理ツールを提供するAIMプログラムを開始

Microsoft は最近、顧客がローカル ERP および CRM アプリケーションをクラウドに移行...

人工知能がファッションデザインと生産を変革

人工知能とロボット工学がファッション業界に変化をもたらしています。市場分析からカスタムデザイン、無駄...

GPSを使用しない自動運転システムソリューション

自動運転技術の発展に伴い、未知の環境におけるスマートカーの測位技術がこの分野の研究の中核となっていま...

...

AIチップの過去と未来、この記事を読んでください

[[248236]]皆さんは、イ・セドルと柯潔を破った Google の「Alpha Go」をまだ覚...

6つの主要なソートアルゴリズム

6 つの一般的なソート アルゴリズムの GIF アニメーションがあり、ソートの考え方をより簡単に理解...

一般的な機械学習アルゴリズムの包括的なリスト

1. 学習方法1.1 教師あり学習1.2 教師なし学習1.3 半教師あり学習1.4 強化学習2. ア...

教育省:中国はAI教育政策の提供を増やす

12月7日から8日にかけて、中華人民共和国教育部、中国ユネスコ国家委員会、ユネスコの共催による「20...

...

知っておくべき6つのAIバイアス

[[441742]]子どもは成長するにつれて、聴覚、視覚、触覚などの感覚を通して周囲の世界について学...