TransformerEngine:一個使用低精度數值格式在 NVIDIA GPU 上加速 Transformer 模型的函式庫
TransformerEngine:一個使用低精度數值格式在 NVIDIA GPU 上加速 Transformer 模型的函式庫
它解決了什麼問題
Transformer Engine(TE)針對將 Transformer 模型擴展至數千億參數時所面臨的高記憶體與計算需求。它透過使用低精度數值格式來降低記憶體使用量,同時不犧牲模型準確度,從而實現更快的訓練與推論。
它如何運作
TE 提供一套高度最佳化的建構模組與融合 kernel,適用於 Transformer 架構。它實作了自動混合精度 API,讓開發者能無縫將 8 位元浮點(FP8)、MXFP8、NVFP4 等低精度格式整合到既有的 PyTorch 或 JAX 工作流程中。函式庫在內部管理低精度訓練所需的縮放因子,簡化使用者的操作流程。
目標使用者
此函式庫設計給使用 NVIDIA GPU(Ampere、Ada、Hopper、Blackwell 架構)的 AI 研究人員與工程師,特別是構建大規模 Transformer 模型(包括 LLM、MoE 架構與多模態模型)的使用者。
重點特色
- 支援 Hopper、Ada 與 Blackwell GPU 上的 FP8 精度
- 支援 Blackwell GPU 上的 MXFP8 與 NVFP4 格式
- 為 Transformer 模型優化的建構模組與融合 kernel
- 可與 PyTorch、JAX 等主流框架以及 DeepSpeed、Hugging Face Accelerate、Megatron‑LM 等 LLM 函式庫整合
- 在 Ampere GPU 及更新的硬體上支援 FP16 與 BF16 的最佳化
Sources
- undefinedNVIDIA/TransformerEngine