MiniMax-H3-Comfy-NPU 性能调优指南:BF16 对 INT8、8/21/50 步 768P 实测数据对比(含单卡低显存方案)
【免费下载链接】MiniMax-H3-Comfy-NPU项目地址: https://ai.gitcode.com/Ascend-SACT/MiniMax-H3-Comfy-NPU
MiniMax-H3-Comfy-NPU 是面向Ascend NPU + ComfyUI的 MiniMax-H3 模型多卡适配项目,支持 FL2VA(文本/首帧生成视频与音频)和 Ref2VA(参考图生成视频与音频)。项目把 4 NPU 的 768P 推理耗时降到基线的约 1/5、资源消耗减半。本文基于 768P 场景的实测数据,完整对比BF16 与 INT8 权重、8/21/50 步采样的性能差异,并给出单卡低显存的落地方案。
一、项目与性能概况
- 基线对比:Ref2VA 768P 15 秒场景,vllm-omni 8 卡基线约 2400s,本适配在4 卡约 500s,资源消耗下降一半(详见 README.md)。
- 验证环境:Ascend A3 × 4(单卡 64 GB HBM),CANN 9.0.1、PyTorch 2.10.0+cpu、torch-npu 2.10.0.post2、指定 ComfyUI commit,依赖清单见 source_deps_info.json。
- 适配核心:补丁 comfy-ui-changes.patch 引入通用
MultiNPUParallelConfig(统一管理 1/2/4 卡的 DiT、文本编码器、视频/音频 VAE 调度)、INT8 走npu_quant_matmul避免 CPU 回退、权重只读一次形成 CPU 热缓存。 - 依赖安装脚本 install_deps_minimax_h3.sh 会把 Turbo 自定义节点和 6 套工作流自动部署到 ComfyUI 规定路径。
二、768P 实测性能数据总表(4 NPU)
以下数据统一条件:4 NPU、1344x768(768P)、24 fps、固定 seed20260813,单次顺序运行,端到端耗时包含模型阶段切换、conditioning、采样、VAE 解码与产物保存。
| 场景 | 权重 | 卡数 | 输出 | 端到端耗时 |
|---|---|---|---|---|
| FL2VA Turbo 8 步 | BF16 | 4 | 768P / 5 秒 | 212.33s |
| FL2VA Turbo 8 步 | INT8 | 4 | 768P / 5 秒 | 113.51s |
| Ref2VA Turbo 8 步 | BF16 | 4 | 768P / 5 秒 | 213.70s |
| Ref2VA Turbo 8 步 | BF16 | 4 | 768P / 15 秒 | 495.79s |
| Ref2VA Turbo 8 步 | pruned INT8 | 4 | 768P / 5 秒 | 265.42s |
| Ref2VA Turbo 8 步 | pruned INT8 | 4 | 768P / 15 秒 | 454.77s |
| FL2VA Turbo 8 步 | BF16 | 4 | 768P / 15 秒 | 441.32s |
| FL2VA Turbo 8 步 | INT8 | 4 | 768P / 15 秒 | 389.37s |
| Ref2VA Euler 50 步 | BF16 | 4 | 768P / 15 秒 | 2263.03s |
| Ref2VA res_multistep 21 步 | BF16 | 4 | 768P / 15 秒 | 944.96s |
| Ref2VA Turbo 8 步(同权重对照) | BF16 | 4 | 768P / 15 秒 | 413.65s |
| FL2VA Turbo 8 步(成功性) | INT8 | 1 | 480P / 15 秒 | 370.99s |
| Ref2VA Turbo 8 步(成功性) | pruned INT8 | 1 | 480P / 15 秒 | 448.55s |
三、BF16 vs INT8 权重:怎么选
- FL2VA:INT8 明显更快。5 秒场景
212.33s → 113.51s(缩短约 47%),15 秒场景441.32s → 389.37s。4 卡追求速度时优先选 INT8 DiT + INT8 文本编码器。 - Ref2VA:pruned INT8 与 BF16 互有胜负。5 秒时 INT8 略慢(
265.42svs213.70s),15 秒时略快(454.77svs495.79s),总体相当。INT8 的核心价值在省显存、解锁单卡运行,而非加速。 - 选型结论:
- 4 卡、显存充足、追求速度 → FL2VA 用 INT8,Ref2VA 用 BF16;
- 单卡或低显存机器 → 必须用 INT8(Ref2VA 必须用pruned INT8 DiT)。
四、8 / 21 / 50 步采样:Turbo 能省多少时间
在相同 BF16、768P、15 秒输入下,采样耗时约为:
| 步数 | 采样耗时 | 相对 8 步 |
|---|---|---|
| Euler 50 步 | 约 35.00 分钟 | 约 6 倍 |
| res_multistep 21 步 | 约 14.98 分钟 | 约 2.6 倍 |
| Turbo 8 步 | 约 5.79 分钟 | 1 倍(推荐) |
采样耗时近似随步数线性增长,因此:
- 8 步 Turbo 是推荐性能基线,端到端比 50 步快 5 倍以上(
2263.03svs413.65s)。 - 21 步 / 50 步仅用于质量对照,对应工作流 ref2va_21steps.json、fl2va_50steps.json。
- 8 步工作流使用 Turbo LoRA(推荐
minimax_h3_turbo_v4_step600_ema版本),对应 fl2va_8steps_lora.json、ref2va_8steps_lora.json。 - 节点参数建议:6~8 步用 v4-600 EMA,
strength保持1.0,调度器simple;4 步且大运动场景可退回 v1-850 权重。Turbo 节点说明见 ComfyUI-MiniMax-H3-Turbo。
五、单卡低显存方案(INT8 + 480P)
当机器只有 1~2 张 NPU 时,官方验证的低资源成功性方案如下:
- 权重:INT8 DiT + INT8 文本编码器;Ref2VA 必须使用 pruned INT8 DiT。
- 分辨率降到480P(宽度/高度为 32 的倍数)。
- 打开工作流后,将
Multi-NPU Parallel Config节点的npu_count改为实际卡数(可用值仅1、2、4),否则运行前校验会失败。 - 实测耗时:FL2VA INT8 单卡 480P/15 秒
370.99s;Ref2VA pruned INT8 单卡 480P/15 秒448.55s。 - ⚠️单卡 BF16 + 768P + 15 秒不是受支持基线,不建议尝试。
六、调优关键点
- 显存为何四卡仍然高:当前 DiT 是序列并行而非参数分片,每张卡都需要完整模型的可换入权重地址空间,4 卡加速的是 token/attention 计算,并不会把单卡权重显存除以四。
- 首次任务为何慢:首次需从 NFS 读取约 66.3 GB BF16 DiT 与约 51.5 GB 文本编码器,并建立各 rank 模型拓扑和 NPU residency;后续任务因 CPU 热缓存会明显更快。
- Turbo LoRA 节点的
low_vram开关:打开后 LoRA 直接合并进权重,峰值显存最低,适合小显存/更高分辨率,但在 INT8/pruned 量化底座上画质会略软;默认 bypass 模式最锐利。 - 分辨率与时长约束:宽高为 32 的倍数(短边通常 768),帧数 24 fps 下吸附到
17·k+5网格(124 帧 ≈ 5 秒),验证范围约 124~362 帧。
七、常见问题快速处理
| 问题 | 处理方法 |
|---|---|
| 任务 OOM 失败 | 先读runtime/*.log第一条异常;确认队列为空后用 restart-v1.sh 清理 allocator 状态,不要直接重提同一任务 |
| 权重加载慢 | 首次任务正常现象,见上方"首次任务为何慢" |
| 启动出现 skimage / xFormers 警告 | 属预期提示(NPU 环境不走 CUDA 的 xFormers),以MultiNPUParallelConfig与 Turbo 节点成功导入为准 |
| 服务启停 | 统一使用 start_comfyui-4npu.sh / stop_comfyui-4npu.sh / restart-v1.sh,重启脚本会等待端口释放并通过健康检查 |
| 权重放共享存储 | 在 extra_model_paths.yaml 添加扫描路径,重启后从日志确认Adding extra search path |
八、相关文件资料
- 完整文档与实测数据:README.md
- 多卡适配补丁:comfy-ui-changes.patch
- 依赖安装脚本:install_deps_minimax_h3.sh
- 工作流目录:additional_files/workflows/minimax-h3/
- Turbo 自定义节点:additional_files/custom_nodes/ComfyUI-MiniMax-H3-Turbo/
- 运行脚本:additional_files/runtime/
【免费下载链接】MiniMax-H3-Comfy-NPU项目地址: https://ai.gitcode.com/Ascend-SACT/MiniMax-H3-Comfy-NPU
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考