AMD、MI300X単一ノードでGLM-5.3-FP8をDP8+EP8提供する手順を公開

スペック

総パラメータ744B
活性パラメータ約39B
コンテキスト長1,048,576 tokens(native rope length)
重みの公開FP8 safetensors shards(141 shards、モデルは約756 GB)
配布形式・量子化FP8(weights、latent KV cache)
4bit量子化の目安メモリ約446.4GB(512GB以上のメモリで実行可能な目安)

メモリの目安はパラメータ数×0.6バイトの概算で、実際はコンテキスト長と実装で変わります

AMD ROCm Blogsは2026年10月14日、AMD Instinct MI300Xを8基搭載した単一ノードで、744B総パラメータのMoEモデルGLM-5.3-FP8をDP8+EP8(DEP)構成で提供する検証済みのサービング手順を公開しました。96K-in / 32K-out、最大同時実行数128の条件で、DP8+EP8の出力スループットはTP=8より147%高い結果でした。

GLMはZ.aiが開発するAIモデルのファミリーで、AMD InstinctはAMDのデータセンター向けアクセラレーター製品群です。記事の執筆者はPradeep Sakhamoori、Mohit Deopujari、Janet Tseng、Eliot Liの4名です。

何が新しいか

既定のテンソル並列(TP)は全レイヤーを8 GPUに分割するため、長文脈・高同時実行ではデコードの各ステップがテンソル集団通信になり、その通信コストがシーケンス長とともに増えると記事は説明しています。コーディングなどのエージェント的ワークロードを代表する96K/32K条件で、TP=8がボトルネックになったことが本手順の動機です。

DP8+EP8では各GPUが独立したデータ並列ランクとなり、独自のリクエストストリームとlatent KV cacheを持ちます。256個のルーテッドエキスパートは1 GPUあたり32個ずつ分散し、テンソル並列は無効化します。MLAは各ランク内で完結して実行され、エキスパート間のall-to-all通信はノード内XGMIに限定されます。アテンション、latent KV cache、共有エキスパート、埋め込みは各ランクに複製します。

仕様・数値

GLM-5.3-FP8は78ブロックで構成され、トークンごとに256個中8個のルーテッドエキスパートと常時動作する共有エキスパート1個を使います。アテンションはMulti-head Latent Attention(kv_lora_rank = 512)とDeepSeek Sparse Attention(DSA)の組み合わせで、DSAのインデクサーはMLAのKV cacheとは別に層ごとのキャッシュを持つため、HBM計画では両方を考慮する必要があります。

項目 値
GPU MI300X ×8(GPUあたり192 GB HBM3、合計1,536 GB)
GPUあたりのエキスパート 32 routed experts
サービングウィンドウ --max-model-len 202752
GPUメモリ使用率 --gpu-memory-utilization 0.9
ベンチマーク条件 最大同時実行数128、プロンプト数128
96K/32K DP8+EP8がTP=8比で出力スループット147%高
8K/1K TP=8の方が高速

ネイティブのrope長は1,048,576 tokensですが、DEPではKV cacheがランクごとに置かれるため、コンテキスト長はGPU単位のHBM予算になります。202,752 tokensは、起動し、初回のコールドJITコンパイル(30〜45分)を通過し、128本の同時シーケンスの余地を残せたウィンドウです。記事は1M-tokenのDEP構成を公開しておらず、--max-model-lenを上げる場合はHBM使用量と同時実行数を注意深く監視するよう述べています。

要件と試し方

  • ハードウェア: MI300X ×8、全GPUを空けておく
  • ホスト: ROCm 7.2.x、Docker 20.10+、DOCKER_BUILDKIT=1、ユーザーをvideoとrenderグループに追加
  • モデル: 約756 GB(141個のFP8 safetensors shard)。Hugging Faceでzai-org/GLM-5.3のライセンスを受諾
  • キャッシュ: 少なくとも10 GBのJITキャッシュボリュームを再起動間で保持
  • ソフトウェア: vLLM v0.28.0、ROCm 7.2.3、AITER、V2 model runner

重みの取得にはpip install -U huggingface_hubのあと、hf download zai-org/GLM-5.3 --local-dir /path/to/glm-5.3-fp8をHF_TOKEN付きで実行します。起動時の主要フラグは--tensor-parallel-size 1 --data-parallel-size 8 --enable-expert-parallelです。

Dockerfileでは、執筆時点でレビュー中だったAITERの2つの修正を適用します。PR#4365はgfx942でnhead == 64(DP / TP=1)の場合にFP8 MLAデコードカーネルで起きるGPUメモリフォールトを防ぎます(TP=8はnhead=8のため該当しません)。PR#5563は公開ベースイメージでのコールドJITの__halfコンパイル失敗を修正します。パッチのアンカーが見つからない場合、ビルドはエラーで停止します。記事には推論とツール呼び出しの機能検証コマンド、vllm bench serveによる比較手順も含まれています。

この記事の固有名詞

コメント (0)

まだコメントはありません。

コメントを書く

2000文字以内