vime ROCm 對 AMD Instinct GPUs 的支援
vime ROCm 對 AMD Instinct GPUs 的支援
vLLM 已將 ROCm 支援整合到 vime,其強化學習(RL)框架,使得大規模 RL 後訓練能夠在 AMD Instinct MI300X 和 MI355X GPU 上原生運行。此整合提供了一個經過驗證的端到端管線,包括預建容器,以消除從源碼構建的需求。
vime 架構與設計
vime 基於 slime 框架採用三階段、解耦的訓練-推理設計。它將 RL 過程分為三個不同的組件:
- Training (Megatron): 管理主要的訓練迴圈、參數更新以及將權重同步到推送端。
- Rollout (vLLM + Router): 根據獎勵或驗證器訊號處理推理採樣以產生訓練樣本。
- Data Buffer: 作為訓練與推送之間的橋樑,管理自訂推送邏輯和提示注入。
AMD Instinct GPUs 在 RL 中的硬體優勢
RL 後訓練對記憶體需求極高,因為它需要同時存儲訓練端權重(Megatron 格式)和推送端 KV 快取(vLLM 推送)。AMD Instinct GPU 已針對此特性進行優化:
- High HBM Capacity: MI300X 提供 192 GB 的 HBM3,而 MI355X 提供 288 GB。此大容量減少了對激進張量平行ism 的需求,簡化了拓撲並提高了集群利用率。
- Superior Memory Bandwidth: MI300X 提供超過 5 TB/s 的總頻寬,而 MI355X 提供 8 TB/s。由於 RL 推送受記憶體頻寬限制,這更高的吞吐量降低了自回歸 token 生成階段的步驟延遲。
- Native Ecosystem Integration: ROCm 的開源特性使 vime 能在不需要單獨代碼路徑的情況下繼承現有的 vLLM 推送堆疊,利用原生 PyTorch 和 vLLM 對 ROCm 的支援。
在 ROCm 上的技術實現
將 vime 帶到 AMD 硬體涉及整合幾個關鍵軟體元件:
Megatron-LM 後端
vime 使用一個與 ROCm 相容的 Megatron-LM 分支。為確保相容性,已實施一個補丁來在非 CUDA 建置時保護 CUDA 融合核心初始化。該管線支援在單一 GPU 上將 HuggingFace 轉換為 torch_dist 檢查點,並利用原生 PyTorch 路徑進行梯度累積。
共置權重同步
在共置模式下,Megatron 與 vLLM 共享同一個 GPU 池。vime 使用進程間通訊(IPC)在每個優化步驟後將 Megatron 的更新權重同步到 vLLM。此功能在 ROCm 上由 torch.cuda.get_device_properties(i).uuid 介面啟用,該介面提供穩定且進程一致的設備 UUID 用於路由。
資源管理與 Ray 整合
GPU 指派透過 HIP_VISIBLE_DEVICES 管理。vime 透過同時設定 CUDA_VISIBLE_DEVICES 來確保 Megatron 訓練參與者與 vLLM 子進程間的一致性。Ray 的 AMD GPU 管理器已設定為尊重這些遮罩,且系統需要提高檔案描述符限制(--ulimit nofile=1048576:1048576)才能大規模產生參與者工作進程。
在 MI355X 上的效能基準
在 MI355X GPU 上使用 Qwen3-8B 模型進行測試,在 100 個訓練步驟內展示了以下結果:
- Throughput: 持續約 4,100
tokens_per_gpu_per_second。隨著策略學習到更可預測的輸出,吞吐量呈上升趨勢,使得 vLLM 能更有效地進行批處理。 - Logprob Stability:
train_rollout_logprob_abs_diff穩定在約 0.012 左右。訓練與推送之間的 log 機率低差異表示權重同步成功,且與 NVIDIA 硬體上的結果相當。 - Reward Convergence: 使用
dapo-math-17k資料集,raw_reward從接近 0 上升至約 0.5–0.6,表明策略成功學會偏好驗證器獎勵的推理模式。
支援的功能與路線圖
目前支援
- GRPO 訓練
- 共置和非同步(不相交 GPU 池)訓練與推送
- Megatron-LM 訓練後端和 vLLM 推送後端
- 支援 Qwen3 Dense 和 MoE 模型
未來路線圖
- 完整的 vLLM Router 和 PD (Prefill-Decode) 分離支援
- FP8 管線優化
- R3 (Rollout Routing Replay) 用於 AMD MoE 工作負載
- 針對記憶體洩漏和 logprob 分歧的非同步訓練效能優化
- 多智能體環境和多輪工具呼叫的 Agentic RL