昨年 10 月の Google Cloud Next 2022 イベントで、Google は、Alibaba、AMD、Arm、Amazon、Intel、Nvidia などのテクノロジー企業が推進するオープンソース AI フレームワークに正式に協力しました。は、さまざまな機械学習フレームワークを統合することに取り組んでおり、機械学習開発者はフレームワークとハードウェアを積極的に選択できます。
水曜日、Google は OpenXLA プロジェクトが正式にオープンソースであると発表しました。
プロジェクトリンク: https://github.com/openxla/xla
複数の異なる機械学習フレームワークおよびハードウェアプラットフォームで動作する統合機械学習コンパイラーを作成することにより、OpenXLA は高速化されます。機械学習アプリケーションの配信と、コードの移植性の向上を実現します。これはAIの研究と応用にとって重要なプロジェクトであり、ジェフ・ディーンもソーシャルネットワーク上でこのプロジェクトを宣伝しました。
現在、機械学習の開発と展開は、フレームワーク、ハードウェア、ユースケースによって異なる可能性がある断片化されたインフラストラクチャの影響を受けています。この分離により、開発者の作業速度が制限され、モデルの移植性、効率性、生産性に対する障壁が生じます。
3 月 8 日、Google などは、XLA、StableHLO、IREE リポジトリを含む OpenXLA プロジェクトを開始し、これらの障壁を取り除くための大きな一歩を踏み出しました。
OpenXLA は、Alibaba、AWS、AMD、Apple、Arm、Cerebras、Google、Graphcore、Hugging Face、Intel、Meta、NVIDIA などの AI/機械学習業界のリーダーによって共同開発されたオープンソースの ML コンパイラー エコシステムです。これにより、開発者は、あらゆる主要な機械学習フレームワークからモデルをコンパイルして最適化し、効率的なトレーニングとさまざまなハードウェアでのサービスを提供できるようになります。 OpenXLA を使用する開発者は、トレーニング時間、スループット、サービス遅延、そして最終的にはリリースとコンピューティングのコストが大幅に改善されることを確認できます。
AI テクノロジーが実用段階に入ると、多くの業界の開発チームが機械学習を使用して、病気の予測と予防、パーソナライズされた学習体験と調査などの現実世界の課題に取り組んでいます。ブラックホール物理学。
モデルパラメータの数が急激に増加し、ディープラーニングモデルに必要な計算量が半年ごとに倍増する中、開発者はインフラストラクチャの最大のパフォーマンスと利用率を追求しています。多くのチームが、データセンター内のエネルギー効率の高い機械学習専用の ASIC から、より高速な応答時間を提供する AI エッジ プロセッサに至るまで、さまざまなハードウェア モデルを活用しています。したがって、効率を向上させるために、これらのハードウェア デバイスはカスタマイズされた独自のアルゴリズムとソフトウェア ライブラリを使用します。
その一方で、現在使用されている複数のフレームワーク (TensorFlow、PyTorch など) にさまざまなハードウェア デバイスをブリッジするための共通のコンパイラーがなければ、機械学習を効率的に実行するために多大な労力を費やす必要があります。実際には、開発者は各ハードウェア ターゲットのモデル操作を手動で最適化する必要があります。つまり、カスタム ソフトウェア ライブラリを使用したり、デバイス固有のコードを作成したりするには、その分野の専門知識が必要になります。
これは矛盾であり、特殊なテクノロジーを使用して効率を高めると、フレームワークやハードウェア間でサイロ化された一般化できないパスが発生し、メンテナンスコストが高くなり、ひいてはベンダーロックインにつながり、マシンの進歩が遅くなります。学習の発展。
OpenXLA プロジェクトは、ML インフラストラクチャの複雑さ全体に対応する最先端の ML コンパイラーを提供します。その中核となるのは、パフォーマンス、拡張性、移植性、柔軟性、使いやすさです。 OpenXLA により、AI の開発と提供を加速することで、現実世界における AI のより大きな可能性を実現したいと考えています。
OpenXLA の目的:
機械学習インフラストラクチャにおいて私たちが今日直面している課題は膨大であり、どの組織も単独で効果的に解決することはできません。 OpenXLA コミュニティには、フレームワークからコンパイラ、ランタイム、チップに至るまで、AI スタックのさまざまなレベルで活動する開発者と業界リーダーが集まり、ML 空間で見られる断片化に対処するのに理想的です。
オープンソース プロジェクトとして、OpenXLA は次の原則を遵守します:
OpenXLA は、移植性を活用し、共通のコンパイラー インターフェイスを通じてすべての主要なフレームワークでサポートされるモジュラー ツールチェーンにより、機械学習開発者の障壁を取り除きます モデル表現を標準化し、ドメイン固有のコンパイラーを提供しますターゲット固有およびハードウェア固有の強力な最適化を備えています。ツールチェーンには XLA、StableHLO、IREE が含まれており、これらはすべて MLIR (機械学習モデルをハードウェア上で一貫して表現、最適化、実行できるようにするコンパイラー インフラストラクチャ) を活用しています。
機械学習のユースケースの範囲
OpenXLAの現在の使用法は、DeepMindのAlphaFold、GPT2、A上のSwin Transformerを含むMLユースケースの範囲をカバーしていますリババクラウド待機モデルを完全にトレーニングし、Amazon.com でマルチモーダル LLM トレーニングを実行します。 Waymo などの顧客は、車載リアルタイム推論に OpenXLA を活用しています。さらに、OpenXLA は、AMD RDNA™ 3 を搭載したローカル マシン上の Stable Diffusion サービスを最適化するために使用されます。
すぐに使える最高のパフォーマンス
OpenXLA を使用すると、開発者はデバイス固有のコードを記述することなく、モデルのパフォーマンスを簡単に高速化できます。代数式の簡素化、メモリ内データ レイアウトの最適化、ピーク メモリ使用量と通信オーバーヘッドを削減するためのスケジューリングの改善など、モデル全体の最適化機能を備えています。高度なオペレータ フュージョンとカーネル生成により、デバイスの使用率が向上し、メモリ帯域幅の要件が軽減されます。
ワークロードを簡単にスケール
効率的な並列化アルゴリズムの開発には時間がかかり、専門知識が必要です。 GSPMD のような機能を使用すると、開発者はキー テンソルのサブセットに注釈を付けるだけで済み、コンパイラはそれを使用して並列計算を自動的に生成できます。これにより、複数のハードウェア ホストおよびアクセラレータ間でモデルを分割し、効率的に並列化するために必要な多大な労力が不要になります。
移植性とオプション性
OpenXLA は、AMD および NVIDIA GPU、x86 CPU および Arm アーキテクチャ、Google TPU などの ML アクセラレータを含む、さまざまなハードウェア デバイスをすぐに使用できるサポートを提供します。 AWS Trainium と Inferentia、Graphcore IPU、Cerebras Wafer-Scale Engine など。 OpenXLA は、OpenXLA の入力形式として使用されるポータブル レイヤーである StableHLO を通じて、TensorFlow、PyTorch、および JAX もサポートしています。
柔軟性
OpenXLA は、ユーザーにモデルのホットスポットを手動で調整する柔軟性を提供します。カスタム呼び出しなどの拡張メカニズムにより、ユーザーは CUDA、HIP、SYCL、Triton、およびその他のカーネル言語でディープ ラーニング プリミティブを記述して、ハードウェア機能を最大限に活用できます。
StableHLO
StableHLO は、ML フレームワークと ML コンパイラーの間の移植性レイヤーであり、動的、量子化、スパース性の高レベル操作 (HLO) をサポートする一連の操作です。さらに、互換性を保証するために、MLIR バイトコードにシリアル化することもできます。すべての主要な ML フレームワーク (JAX、PyTorch、TensorFlow) は StableHLO を生成できます。 2023 年に、Google は PyTorch チームと緊密に連携して、PyTorch バージョン 2.0 との統合を実現する予定です。
以上が統合 AI 開発: Google OpenXLA はオープンソースであり、すべてのフレームワークと AI チップを統合します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。