HYDRA: A Heterogeneous Chiplet DSE Framework for Serving Dynamic Hybrid LLM Workloads
本論文では、ハイブリッドなTransformer-Mamba大規模言語モデルのサービングにおけるスループットとレイテンシを大幅に改善するために、ヘテロジニアスなチップレットアーキテクチャと動的なランタイムポリシーを共同で最適化する包括的な設計空間探索フレームワークであるHYDRAを提案する。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
現代の世界は、物語を書き、問題を解決し、会話を行うことができる大規模言語モデルという、新しい種類のデジタル・インテリジェンスによって動いています。これらのシステムは非常に巨大化しており、それらを動かすために設計されたコンピュータ・チップは、その進化に追いつこうと苦闘しています。長年、業界はあらゆるタスクを処理するために単一の巨大なプロセッサに依存してきましたが、これらのモデルがより複雑になるにつれ、その手法は限界に突き当たっています。チップは製造するにはコストがかかりすぎ、冷却するには熱すぎ、そして、一度に数百万人ものユーザーにサービスを提供するために必要な、混沌としたタスクの混在を管理するにはあまりにも遅すぎるのです。これを解決するために、エンジニアたちはモジュール化されたアプローチ、つまり、コンピュータを「チップレット」と呼ばれる、より小さく特化した部品へと分解する手法へと向かっています。エンジン、トランスミッション、燃料タンクが、一つの変更不可能な金属の塊ではなく、交換や再配置が可能な最適化されたモジュールとして存在する高性能車両を想像してみてください。これにより、より柔軟で効率的なシステムが可能になりますが、同時に新たな問題が生じます。それは、これらの部品を正確にどのように配置するか、そして部品間のデータフローをどのように管理するかという、非常に困難なパズルです。
研究者たちは、このパズルを解くために「HYDRA」と呼ばれる新しいフレームワークを開発しました。これは、これらのモジュール式チップをどのように組み立て、実行中にどのように管理すべきかを探索するために設計された、洗練されたツールです。課題は、可能な配置の数が膨大であり、強力なコンピュータを使用しても、それらすべてを一つずつテストするには何年もかかるということです。さらに、これらのモデルが行う作業は一定ではなく、ユーザーが何を求めているかに応じて絶えず変化します。時には長い文書を素早く読み込む必要があり、またある時には言葉を一つずつ生成する必要があります。これらの異なるフェーズは、異なるリソースを要求します。そして、ユーザーから届くリクエストの混ざり具合は予測不可能です。もしシステムが完璧に調整されていなければ、エネルギーと時間を浪費し、ユーザーを待たせることになります。
HYDRAの開発チームは、あらゆる可能性をテストする必要なく、この複雑さをナビゲートする方法を作り出しました。すべての設計の詳細をすべてシミュレーションして、遅くて手間のかかる作業を行う代わりに、彼らは高速でスマートなエスティメーター(推定器)を構築しました。このツールは熟練したナビゲーターのように機能し、潜在的な設計の広大な風景を素早くスキャンして、最も有望な経路を見つけ出します。これは、システムが活動状態の間をどのように移動するかという数学的手法に基づいており、数週間ではなく数分でパフォーマンスを予測することを可能にします。このツールが最適な候補を特定すると、研究者たちはそれらのトップの選択肢に対してのみ、詳細で低速なシミュレーションを実行し、期待通りに動作することを確認します。この二段階のプロセスにより、以前は扱うには大きすぎた設計空間を探索することができ、これまで目に見えなかった方法で速度と効率のバランスをとる構成を見つけ出すことができます。
この探索の結果は極めて重要です。研究者たちが彼らの最高の設計を既存の最も高度なシステムと比較してテストしたところ、新しいアプローチは同じ時間内に1.55倍多くの作業を処理できることがわかりました。同時に、ユーザーが最初の言葉を受け取るまでの時間は、ほぼ半分に減少しました。特定のシナリオにおいては、その改善はさらに劇的であり、システムは従来の手法よりも2倍以上のワークロードを処理できました。これらの進歩は、ハードウェアとそれを動かすソフトウェアの入念な「協調設計(co-design)」から生まれています。研究者たちは、単にパワーを増やすだけでは不十分であり、適切な部品がデータの近くに配置されるようにシステムを構成し、かつ、仕事の種類が変わったときにリソースを即座にシフトできるほどソフトウェアが柔軟である必要があることを発見しました。
この研究における重要な発見は、物理的なコンポーネントの配置が、コンポーネントそのものと同じくらい重要であるということです。研究者たちは、チップレット同士がどれだけ頻繁に通信する必要があるかに基づいて、シリコン基板上に異なるチップレットを配置する戦略を開発しました。最も頻繁に通信する部品を近くにグループ化することで、システム内をデータが移動する時間を短縮しました。この通信を考慮した配置(communication-aware placement)と、ユーザーのリクエストを動的にグループ化する方法を組み合わせることで、システムはよりスムーズに動作しました。ソフトウェアは、バッチ(一団)のリクエストが到着するのを待ってから作業を開始するのではなく、リソースが空き次第すぐに新しいリクエストを受け入れるため、システムを常に稼働させ、効率的に保つことができます。この柔軟性は、次のグループのユーザーを待っている間にシステムがアイドル状態(空き状態)になるのを防ぐために極めて重要です。
また、研究では、使用される特定のモデルの種類が変わった場合に、これらの設計がどの程度うまく機能するかについても調査されました。彼らは、特定のモデルに最適化された構成を、他の異なるモデルに対してテストしました。その結果、単一の特定のモデル向けに構築された設計は、異なるモデルを実行するように求められると性能が低下することがわかりました。しかし、多様なモデルを扱うように最適化された設計は、それぞれの専用タスクにおいても、独自の専用設計に近い性能を発揮しつつ、未知の新しいモデルに対しても堅牢であることがわかりました。これは、多くの異なるユーザーやアプリケーションにサービスを提供するためのシステムにとっては、高度に特化した設計よりも、柔軟で汎用的な設計の方が価値が高いことを示唆しています。それは、サポートする人工知能の形態が進化しても、システムが効率性を維持するためのセーフティネットとなります。
結局のところ、この研究は、大規模言語モデルを動かす未来が、ハードウェア・アーキテクチャとソフトウェア管理のパートナーシップにあることを証明しています。単に高速なチップを作るだけで問題を解決できるわけではありません。そのチップを通じて情報の流れを管理する、よりスマートな方法も構築しなければなりません。HYDRAフレームワークは、この協調設計のためのブループリント(設計図)を提供しており、部品がどのように適合し、それらがリアルタイムでどのように管理されるかを注意深く検討することで、大幅に高速で効率的なシステムを構築できることを示しています。研究者たちは、将来の人工知能を動かす次世代のコンピューティング・システムの開発を加速させることを願い、彼らのツールを公開しています。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。