NCCL 是英伟达的 GPU 集合通信库,提供 all-reduce、all-gather 等优化原语,用于单机和多机训练。
NVIDIA/apex
NVIDIA 维护的 PyTorch 扩展,提供混合精度与分布式训练工具及可选的融合 CUDA/C++ 内核。
- Star
- 9,001
- Fork
- 1,532
- 未关闭 Issue
- 777
- 最近提交
- 5天前
这是什么?
Apex 是 NVIDIA 维护的一组 PyTorch 扩展工具,用于简化混合精度训练和分布式训练。它的目标是在相关功能合并进 PyTorch 上游之前,尽快向用户提供最新的训练工具。
项目包含 Adam、层归一化、softmax 等常见操作的融合内核,并在 apex.contrib 下提供稀疏化、transducer loss、bottleneck 模块以及分布式优化器等实验性组件。大部分内核以可选的 C++/CUDA 扩展形式构建,安装时通过环境变量按需启用。
项目也支持仅 Python 的安装方式,但会缺少融合内核,DistributedDataParallel、amp 和 SyncBatchNorm 的运行速度可能较慢。NVIDIA 在 NGC 提供的 PyTorch 容器已预装全部扩展。
核心功能
- 01为 PyTorch 提供混合精度训练工具(apex.amp)。
- 02提供分布式训练辅助功能,包括 DistributedDataParallel 和 SyncBatchNorm。
- 03以 CUDA 扩展形式实现的融合优化器与层归一化内核。
- 04contrib 模块可在安装时按需单独启用。
- 05支持仅 Python 的安装方式,适用于没有 CUDA 工具链的环境。
适用场景
- 在 NVIDIA GPU 上使用混合精度加速大模型训练。
- 借助融合的分布式工具运行多卡或多节点 PyTorch 训练。
- 在自定义训练代码中试用融合优化器或归一化层。
快速上手
- 1
克隆代码仓库
git clone https://github.com/NVIDIA/apex - 2
进入项目目录
cd apex - 3
使用核心 C++ 和 CUDA 扩展进行构建和安装
APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation .
使用前须知
- 构建 CUDA 和 C++ 扩展需要兼容的 PyTorch 与 CUDA 环境。
- 部分 apex.contrib 模块仅兼容 PyTorch 每日构建版,不支持稳定发行版。
- Windows 安装仍处于实验阶段。
收录于专题
标签
常见问题
- apex 是什么?
- NVIDIA 维护的 PyTorch 扩展,提供混合精度与分布式训练工具及可选的融合 CUDA/C++ 内核。 Apex 是 NVIDIA 维护的一组 PyTorch 扩展工具,用于简化混合精度训练和分布式训练。它的目标是在相关功能合并进 PyTorch 上游之前,尽快向用户提供最新的训练工具。
- apex 可以免费使用吗?用的什么许可证?
- apex 以 BSD-3-Clause 许可证开源。用于商业产品前,请先确认许可证条款。
- apex 还在维护吗?
- 活跃维护中。apex 最近一次提交是在 2026年11月2日。
- apex 适合用来做什么?
- 在 NVIDIA GPU 上使用混合精度加速大模型训练。 借助融合的分布式工具运行多卡或多节点 PyTorch 训练。 在自定义训练代码中试用融合优化器或归一化层。
- apex 怎么安装和运行?
- 克隆代码仓库: git clone https://github.com/NVIDIA/apex 进入项目目录: cd apex 使用核心 C++ 和 CUDA 扩展进行构建和安装: APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation .
- 在哪里获取 apex?
- 源代码和安装说明在 GitHub 上:https://github.com/NVIDIA/apex
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
5213+17 本周1475C++Other更新于 4天前
面向大规模 Transformer 模型训练的 GPU 优化库与参考训练脚本,支持多维并行。
1.8万+38 本周4714PythonOther更新于 3小时前
面向大模型分布式训练与推理的深度学习优化库,提升效率并降低使用门槛。
4.3万+31 本周5065PythonApache-2.0更新于 4小时前
基于 PyTorch 的大模型分布式训练与推理系统,提供并行策略和显存优化等能力。
4.1万4486PythonApache-2.0更新于 前天
基于 PyTorch 的深度学习框架,自动处理训练循环、多 GPU 扩展等工程代码,同时保留模型逻辑的完全控制。
3.1万+12 本周3849PythonApache-2.0更新于 9天前
微软开源的 MoE(混合专家)优化库,基于 PyTorch 训练和推理 MoE 模型,支持 DeepSeek、Qwen、GLM 等模型的低精度推理。
1028111CMIT更新于 昨天