1 ポイント 投稿者 GN⁺ 2024-06-14 | 1件のコメント | WhatsAppで共有
  • TensorWaveとMK1によるMixtral 8x7B推論の比較で、MI300X+MK1 Flywheelの組み合わせは、実際のチャットユースケース基準でH100 SXM+vLLMより33%高いスループットを示した
  • テストの核心はMoEモデルであり、Mixtral 8x7Bは192GB VRAMのMI300X 1枚に収まるが、80GB VRAMのH100では2枚とtensor parallelism 2が必要となる
  • オフラインバッチ推論では、すべてのバッチサイズでMI300Xの組み合わせが上回り、性能差は1.22x〜2.94xの範囲だった
  • オンラインチャット分布テストでは、平均573個の入力トークン50個の出力トークンのリクエストを使用し、平均レイテンシ5秒の目標で、2個のMI300Xが2個のH100より秒間リクエスト数を33%多く処理した
  • TensorWaveは、スループットだけでなくコスト競争力ハードウェアの入手性まで考慮すれば、MI300Xがクラウドでの大規模推論運用における有力な選択肢になり得ると見ている

比較の核心:MoE推論でMI300XはH100を上回れるのか

  • AMDのフラッグシップアクセラレータMI300Xが、実際のAIワークロードでNVIDIA Hopperアーキテクチャを上回れるかがテストの中心である
  • TensorWaveとMK1は、AMDハードウェアでAI推論性能を引き出すために1か月間協力した
  • 当初の焦点は**Mixture of Experts(MoE)**アーキテクチャだった
    • MoEは計算効率と人気のため選ばれた
    • Mistral、Meta、Databricks、X.aiの強力なオープンソースLLMで使われる構造として紹介された
  • MK1推論ソフトウェアを使用したMI300Xは、Mixtral 8x7Bベースの実際のチャットユースケースで、H100 SXMとvLLMの組み合わせより33%高いスループットを達成した
  • TensorWaveは、NVIDIAのソフトウェアエコシステムのほうが成熟していると認めつつも、AMDはAI市場ですでに強力な競争相手だと評価している

ベンチマーク構成

  • すべてのベンチマークはMixtral 8x7Bモデルで実施された
  • 推論フレームワークはいずれもFP16計算パスを使用するよう設定された
    • FP8計算の有効化は今後の課題として残された
  • 異なるtensor parallelism設定を比較するため、MI300Xのスループットは2倍に外挿された
  • AMDシステム

    • TensorWaveノードは、8個のMI300Xアクセラレータ、2個のAMD EPYC CPUプロセッサ、合計192コア、2.3TB DDR5 RAM構成でテストされた
    • MI300Xアクセラレータの仕様は次のとおり
      • 192GB VRAM
      • 5.3TB/s
      • FP16 約1300 TFLOPS
    • ソフトウェア構成は次のとおり
      • ROCm 6.1.2
      • MK1推論エンジンFlywheel v0.9.2
      • AMD ROCm最適化vLLMフォークrocm/vllm v0.4.0
    • Mixtral 8x7Bの全モデルがMI300X 1個の192GB VRAMに収まるため、**tensor parallelismは1(tp=1)**に設定された
  • NVIDIAシステム

    • H100システムは、NVLink搭載の8個のH100 SXM5アクセラレータ、160 CPUコア、1.2TB DDR5 RAM構成でテストされた
    • H100 SXM5アクセラレータの仕様は次のとおり
      • 80GB VRAM
      • 3.35TB/s
      • FP16 約986 TFLOPS
    • ソフトウェア構成は次のとおり
      • CUDA 12.2
      • vLLM v4.3
        • Mixtral 8x7BをH100の80GB VRAM 2個に収めるため、**tensor parallelismは2(tp=2)**に設定された

オフライン推論結果

  • オフラインテストは固定サイズのプロンプトを生成してモデルに直接渡し、各推論ソリューションの最大スループットを測定した
  • オフラインバッチングは複数のプロンプトを同時に処理し、ハードウェア効率を高める
    • バッチサイズが大きくなるとスループットが増加する
    • 同時により多くのリクエストを処理するため、レイテンシも増える
  • 標準的な慣行に従い、1つのバッチ内のリクエストは同じ入力サイズと同じ出力サイズを持つよう制限された
  • テストはvLLMリポジトリのbenchmark_throughput.pyを修正して実施された
    • Flywheelをバックエンドとして含めるようリファクタリングされた
    • キャッシュ機構を取り除くため、バッチ内のプロンプトはランダムに生成された
  • MI300XとMK1 Flywheelの組み合わせは、すべてのバッチサイズでH100とvLLMの組み合わせより高い性能を示した
    • 性能向上幅は1.22x〜2.94xの範囲だった

オンラインチャット分布テスト

  • オンラインベンチマークは、実際的な一般チャットアプリケーションをシミュレートするよう設計された
  • テストは独立したワーカーを生成してエンドポイントへリクエストを送り、ワーカー数を増やして同時リクエスト数を増加させる方式で進められた
  • リクエストは標準的なテキストチャット分布を使って生成された
    • 平均入力トークンは573個
    • 平均出力トークンは50個
  • ベンチマークツールは任意のデータ分布をサポートする
  • 測定指標は3つ
    • スループット:与えられたワークロードで秒間に処理可能なリクエスト数
    • 平均レイテンシ:各リクエストの全体応答生成にかかる平均時間
    • TPOT(Time Per Output Token):最初のトークン以降、各後続トークンを生成する平均時間で、長い応答の生成速度に影響する
  • 非ストリーミング結果

    • 最初のオンラインベンチマークは非ストリーミングのユースケースをテストした
    • 応答全体を提供するのに必要なスループットとレイテンシを測定した
    • 平均レイテンシ5秒の目標で、**2個のMI300X(tp=1)2個のH100(tp=2)**より秒間リクエスト数を33%多く処理した
    • 同じレベルのサービス品質で同じユーザー数を処理するために、より少ないアクセラレータで済む
  • ストリーミング結果

    • 2つ目のオンラインベンチマークはストリーミングを有効化し、トークンがストリーミングされる際のスループットとTPOTを測定した
    • MI300XはすべてのTPOTでH100より高いスループットを示した
    • より高いトラフィック量でも、MI300Xはテキストをより高速に生成できる

結論とデプロイ提案

  • ベンチマーク結果で、AMD MI300XはMixtral 8x7BのようなMoEアーキテクチャのオフラインおよびオンライン推論タスクにおいて、NVIDIA H100より高い性能を示した
  • 高いスループットだけでなく高速な応答時間が必要な実際のシナリオでも、MI300Xは優れた結果を出した
  • TensorWaveは、性能、コスト競争力、ハードウェアの入手性を考慮すると、MK1ソフトウェアと併用するMI300Xは企業のAI推論拡張に適していると提案している
  • TensorWaveはMI300XをMK1推論ソフトウェアとともに提供しており、ユーザーが直接テストできると案内している

1件のコメント

 
GN⁺ 2024-06-14
Hacker Newsの反応
  • TensorWaveはAIワークロード特化のクラウドプロバイダーで、AMD Instinct MI300Xを使っている点を考えると、このレポートはある程度割り引いて見るべき

    • 典型的なAMD流の比較をしている: 8x AMD MI300X(192GB, 750W)と8x H100 SXM5(80GB, 700W)を比較している
      より公平な比較は8x H100 NVL(188GB, <800W)であるべき
      価格も多くを物語っている。AMDの性能がNvidiaと同等なら、カードを1/4の価格で売る理由はない
    • ベンチマークをどう正確に回したのかを明記している点は長所。ハードウェアさえあれば、再現して反論したり確認したりしやすい
    • Nvidiaチップを使っていたらこのブログ記事がもっと良くなっていたかは、よく分からない
  • 2024年にもなってなぜまだ128入力トークンベンチマークをやっているのか分からない。大半のワークロードを代表しておらず、プレフィル(prefill)性能が非常に重要だ

    • 適切な入力長をどの程度と見ているのか気になる
      実際のクエリがもっと短いのか、長いのかによって、128がなぜ不適切なのかも変わってきそうだ
      単語1つをトークン1つと見なすなら、私の場合ほとんどのクエリは128語より短い
  • この点は楽観的に見たい。この分野では競争が絶対に必要で、今の**$NVDA時価総額**は異常に大きい。フランクフルト証券取引所全体より約0.6兆ドル大きい

    • フランクフルト証券取引所の価値が小さすぎる側に近い。ヨーロッパの開発者が同じ仕事をしてもなぜアメリカより賃金が低いのか不思議がられるが、理由はまさにそれだ
    • フランクフルト証券取引所やDAXは全体としてあまり意味が大きくない。ドイツには強いファミリーオーナーのMittelstand企業が多く、彼らは上場していない
      LidlやAldiのようなディスカウント流通大手や、自動車部品メーカーBoschのように、裕福なドイツ人が所有する巨大な非上場企業もある
    • 今はLLMバブルの真っただ中にいる
      Nvidiaの問題は今後数か月から数年の間に自然に整理される可能性が高い
  • AI科学者としてモデルを多く学習させているが、個人的にはAMDはNvidiaに対して過小評価されていると思う
    チップはNvidiaの最新製品ほど速くはなく、動かすには乗り越えるべき点もある
    しかし大半の業界の大半のワークロードでは、AI自体が資本をうまく使う方法かどうかは別として、AMDの方がはるかに費用対効果が高く、ほぼ同じ結果を出せる

  • 市場と販売価格は、NvidiaソリューションとAMDソリューションの認知された価値を反映している。ツール、ソフトウェア、総所有コスト、管理のしやすさまで含めた結果だ
    また、そのようなアクセラレータをそこまで高価に買って、7Bパラメータモデルを8本並列で回す会社がどれほどあるのかも気になる
    単一アクセラレータで14Bモデルを学習できるという話も出ているが、14Bモデル学習後に4x14Bワークロードで推論スループットがどう出るのかといった、「アクセラレータ全体を使う学習・推論」ワークロードも見たい
    AMDと、これまで推論性能を主張してきた企業の大半、特にIntelやAppleは、勝てるベンチマークだけを選んで提示し、Nvidiaが優勢な残りを無視してきた。この投稿でも複数のコメントが指摘しているように、中間世代の比較モデルを使っている

    • MI300Xは一部の推論ワークロードで勝ち、H100は学習と一部の別の推論ワークロードで勝つ。たとえばTensorRT-LLMを使ったFP8推論ではH100が強く、ROCmはまだ若いが急速に成長中だ
      単一システム、つまり8基アクセラレータ構成のLLMでは、MI300XはH100に対して推論の総所有コストで非常に競争力がある
      Microsoftによれば、AMD Instinct MI300XはGPT-4で価格性能比が最も高く、AMDは2027年までにワット当たり性能を100倍向上させることを目標としている
      https://wccftech.com/amd-instinct-mi300x-best-price-performa...
    • 市場と販売価格には販売戦略も含まれる。強いプレイヤーが支配し、ある程度「抜け目ない」販売戦略を使う分野に参入するには、成熟度の低い製品、特にソフトウェアの成熟度が低い製品には、それに見合う価格設定と数量配分戦略が必要だ
      https://www.techspot.com/news/102056-nvidia-allegedly-punish...
    • MI300Xの生産量は増加中。最近の決算発表でLisa Suは、2024年上半期は生産制約があったが、下半期には生産量が増え、なお販売可能な数量もあると述べた。CoWoSとHBM3/HBM3Eの供給改善による可能性が高い
      こうしたアクセラレータの大量注文は数か月前に入る
      一方でMicrosoftのMI300Xはすでにすべて予約済み
      https://techcommunity.microsoft.com/t5/azure-high-performanc...
      「これらのVMと、それを動かすソフトウェアは、Azure AIサービスの実運用ワークロード向けに目的特化で作られています。世界で最も強力な自然言語モデルであるGPT-4 Turboも、すでにこれらのVM向けに最適化しました。ND MI300X v5 VMは、人気のOpenAIモデルおよびオープンソースモデルで、先進的なコストパフォーマンスを提供します。」
  • テンソル並列設定が性能に影響するのか気になる。素朴な推測ではそうだが、確信はない
    記事によると、AMD構成では MI300X 1基の192GB VRAMに Mixtral 8x7B 全体を収められるためテンソル並列性は tp=1 で、NVIDIA構成では H100 2基の80GB VRAMに収める必要があるため tp=2 が必要になる

    • 個人的には、こうした比較は公平ではないと思う。良い比較なら各デバイス構成に合わせて最適化すべきだ
      つまり、VRAM制限内に収まるモデルを使い、性能が向上するなら8ビット量子化を適用するなどして、両方のデバイスの欠点を不必要にさらすべきではない
  • AMDはハードウェアの方が優れているように見えるが、まだ Nvidia と競争できるだけの生産能力はない。本当に競争が激しくなれば、マージンが縮小していく過程は興味深いものになるだろう
    みんな Nvidia 支配の原因を CUDA だと思っているが、そうではない。今年の売上のほぼ40%は、GPUと相互作用する独自のカスタムスタックを使う巨大企業から来ている
    競合が追いつき、より安い GPU を提供するのは時間の問題だ

    • 「GPUと相互作用する独自のカスタムスタック」という表現は、ほとんど完全な作り話に近い
      CUDAプラットフォームと、人々が .cu ファイルに書く C/C++ に似た言語を混同しているように見える
      一部が .cu ファイルを直接書かないのは事実だが、nvcc、PTX、SASS、ランタイム、ドライバといった残りの CUDAスタック を飛ばしているところはない
      私もそうした「巨大企業」の1つで働いている。信じられないなら、PyTorch に CUDA カーネルがどれだけあるか見ればいい: https://github.com/pytorch/pytorch/tree/main/aten/src/ATen/n...
      Nvidia を支配的にしているのは100% CUDAだ
    • CUDAなしのスタックがどういうものか、もう少し説明するか出典を示してほしい
    • 生産能力は結局のところ、TSMC や少数の競合相手と交渉する問題だ
      TSMC は米国や EU でも一部工場の生産を始めていなかっただろうか
      Nvidia も TSMC を使っており、AMD も TSMC を使っている
  • AMDにとっては良いスタートだ。Nvidia 以外のもう1つの推論オプションである Groq にも関心があり、ときどき使っている
    Nvidia は製造を TSMC に依存している。Samsung が競争力のある製造インフラを構築しているのも良いことで、Taiwan が単一障害点にならずに済む

  • 適切な 統計指標 がなく、特に広く使われる95パーセンタイルではなく平均を使っており、ワット当たり性能もないなら、役に立たない比較だ

    • それに価格性能比も必要だ。結局そこが核心だ
    • 平均はスループットをよりよく示す指標ではないかと思う
      95パーセンタイルもあればよい
  • INT8/FP8 ベンチマークもあればよかったと思う。どちらのカードでも、H100 で tp=2 を使わなくても約60GB VRAMでモデルを載せられたはずだ