不同硬件平台支持的算子能力不同,建议按任务类型启用对应能力。
一、NVIDIA GPU 平台
| 能力 | 环境变量 | 默认值 | 说明 | 适用方向 |
| 点云体素化和动态散射 | HA_USE_VOXEL | 0 | 启用 NVIDIA 点云体素化相关优化。 | 3D 检测、点云处理。 |
| 多相机可变形特征聚合 | HA_USE_DEFORM_AGG | 0 | 启用 NVIDIA 多相机特征聚合优化。 | Sparse4D 等多相机感知任务。 |
| 光栅化 | HA_USE_RASTERIZER | 0 | 启用 NVIDIA 光栅化优化。 | 需要 rasterizer forward/backward 的训练任务。 |
| SyncBatchNorm | HA_USE_SYNCBN | 0 | 移除多余的 CPU 同步操作。 | 分布式训练。 |
NVIDIA GPU 场景下,可启用以下算子加速开关:
export HA_USE_VOXEL=1export HA_USE_DEFORM_AGG=1export HA_USE_RASTERIZER=1export HA_USE_SYNCBN=1python train.py
二、DCU
| 能力 | 环境变量 | 默认值 | 说明 | 适用方向 |
| SyncBatchNorm | HA_USE_SYNCBN | 0 | 移除多余的 CPU 同步操作。 | 分布式训练。 |
| Dropout 融合 | HA_USE_DROPOUT | 0 | 启用 DCU Dropout 优化。 | Transformer/大模型训练。 |
| Softmax Focal Loss | HA_USE_FOCAL_LOSS | 0 | 启用 DCU Softmax Focal Loss 优化。 | 检测任务。 |
| 多尺度可变形注意力 | HA_USE_DEFORM_ATTN | 0 | 启用 DCU 多尺度可变形注意力优化。 | 检测、多模态任务。 |
| RMSNorm | HA_USE_RMSNORM | 0 | 启用 DCU RMSNorm 优化。 | LLM/VLM 训练和推理。 |
| RoPE | HA_USE_ROPE | 0 | 启用 DCU RoPE 优化。 | LLM/VLM 训练和推理。 |
| FastGELU | HA_USE_FAST_GELU | 0 | 启用 DCU FastGELU 优化。 | 使用 GELU 激活的大模型。 |
DCU 场景下,可启用以下算子加速开关:
export HA_USE_DEFORM_ATTN=1export HA_USE_DROPOUT=1export HA_USE_FOCAL_LOSS=1export HA_USE_RMSNORM=1export HA_USE_ROPE=1python train.py
导入后,HyperAcc 会读取当前进程的 HA_* 环境变量,并按配置启用对应能力。
注意:文中涉及的第三方产品、软件、框架、模型及商标名称归其各自权利人所有,仅用于说明 HyperAcc 的适配或使用场景,不构成任何认可、合作、担保或背书。
三、注意事项
·不同硬件平台支持的算子能力不同,实际启用取决于模型结构、PyTorch 版本及运行环境,不符合当前硬件平台的算子开关会被自动跳过。建议先在测试环境验证后再用于生产训练。
·启用算子替换前,建议先确认原始训练任务正常运行,以便在出现异常时快速定位问题并明确优化引入的影响。
·如任务依赖的第三方库版本差异较大,建议先在验证环境测试。
四、算子启用
你可设置以下变量启用 HyperAcc 训练加速套件的算子加速能力。
五、功能开关管理
未设置环境变量时,import hyperacc.auto 不会执行任何操作。你需通过 HA_USE_* 环境变量显式启用能力。
六、总开关
| 环境变量 | 默认值 | 说明 |
| HA_USE_ALL | 0 | 一键启用所有功能。 |
| HA_USE_ALL_HOOKS | 0 | 启用所有透明替换类能力,不影响系统级优化。 |
七、优先级规则
环境变量优先级从高到低依次为:
·HA_USE_<FEATURE>:单项功能开关,优先级最高。显式设置为 0 时,可覆盖上层总开关的启用状态。
·HA_USE_ALL_HOOKS:Hook 类功能总开关。
·HA_USE_ALL:全局总开关。
·默认关闭:未设置任何环境变量时,所有能力默认关闭。
八、系统级优化开关
| 环境变量 | 默认值 | 说明 |
| HA_USE_GC | 1 | 启用 GC 优化。 |
| HA_USE_NUMABIND | 0 | 启用 CPU/NUMA 绑核。 |
| HA_USE_THP | 0 | 启用透明大页配置。 |