【实测】海光 DCU K100-AI 单卡部署 ComfyUI Wan2.2 INT8:13 分 17 秒跑通图生视频

【实测】海光 DCU K100-AI 单卡部署 ComfyUI Wan2.2 INT8:13 分 17 秒跑通图生视频 一、项目概述本次测试目标是在海光 DCU K100-AI 单卡环境下使用 ComfyUI 跑通 Wan2.2 图生视频工作流并验证 INT8 权重加载、LightX2V LoRA 加速、以及第二轮热启动后的生成耗时。这次整理的是单卡 797 秒那次流程对应日志中的结果为Prompt executed in 00:13:17也就是约797 秒ComfyUI 原生 Wan 节点 wan_offline_int8_loader Wan2.2 INT8 high/low noise 权重 LightX2V 4-step LoRA 单卡 K100-AI二、测试环境2.1 机器与容器项目配置节点192.168.217.66容器 ID9b4637fb8077加速卡海光 DCU K100-AI测试卡数单卡使用设备cuda:0 K100_AI : native显存65520 MB主机内存193093 MBPyTorch2.9.0ROCm(6, 3)ComfyUI0.3.56ComfyUI 路径/root/ComfyUI_DEMO/ComfyUI数据路径/data日志路径/data/profiles日志中确认的信息Total VRAM 65520 MB, total RAM 193093 MB pytorch version: 2.9.0 AMD arch: gfx928:sramecc:xnack- ROCm version: (6, 3) Device: cuda:0 K100_AI : native ComfyUI version: 0.3.56三、使用的工作流本次 797 秒对应的 UI 工作流是/data/图生视频(video_wan2_2_14B_i2v)_modi_int8_optim.json实际 API prompt 记录文件是/data/profiles/wan22_int8_optim_r2_prompt.json对应运行日志/data/profiles/comfy_8189_int8_optim_timing.log对应运行记录注意这不是 kDiT 工作流也不是图生视频(video_wan2_2_14B_i2v)_modi_int8_optim_kdit_UI_ksana.json这次 797 秒走的是普通 ComfyUI Wan 工作流。四、模型文件准备4.1 INT8 high / low noise 权重本次使用两份 Wan2.2 INT8 权重wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors容器中的路径为/root/ComfyUI_DEMO/ComfyUI/models/diffusion_models/wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors /root/ComfyUI_DEMO/ComfyUI/models/diffusion_models/wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors这两个文件实际是/data下权重的软链接/root/ComfyUI_DEMO/ComfyUI/models/diffusion_models/wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors - /data/wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors /root/ComfyUI_DEMO/ComfyUI/models/diffusion_models/wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors - /data/wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors如果需要重新创建软链接可以执行ln -sf /data/wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors \ /root/ComfyUI_DEMO/ComfyUI/models/diffusion_models/wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors ln -sf /data/wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors \ /root/ComfyUI_DEMO/ComfyUI/models/diffusion_models/wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors4.2 LightX2V 4-step LoRA本次工作流还使用了 high / low noise 两个 LoRA/root/ComfyUI_DEMO/ComfyUI/models/loras/wan2.2_i2v_lightx2v_4steps_lora_v1_high_noise.safetensors /root/ComfyUI_DEMO/ComfyUI/models/loras/wan2.2_i2v_lightx2v_4steps_lora_v1_low_noise.safetensors工作流中 LoRA 强度为strength_model 1.04.3 VAE使用 VAEwan_2.1_vae.safetensors节点配置vae_name: wan_2.1_vae.safetensors4.4 文本编码器使用文本编码器umt5_xxl_fp8_e4m3fn_scaled.safetensors节点配置clip_name: umt5_xxl_fp8_e4m3fn_scaled.safetensors, type: wan, device: default五、INT8 Loader 安装这条路线依赖wan_offline_int8_loader自定义节点安装位置/root/ComfyUI_DEMO/ComfyUI/custom_nodes/wan_offline_int8_loader启动日志里可以看到Wan offline INT8 loader custom node installed.在运行时loader 成功替换了 Wan 模型里的 Linear 层Wan offline INT8 loader: replaced 400 Linear layers.这是这条单卡 INT8 路线的关键点。六、启动 ComfyUI 服务进入容器后建议先加载环境source /opt/dtk/env.sh如果只跑单卡可以指定export HIP_VISIBLE_DEVICES0然后启动 ComfyUIcd /root/ComfyUI_DEMO python ComfyUI/main.py \ --disable-cuda-malloc \ --use-pytorch-cross-attention \ --port 8189 \ --listen 0.0.0.0 \ /data/profiles/comfy_8189_int8_optim_timing.log 21如果要后台启动cd /root/ComfyUI_DEMO nohup python ComfyUI/main.py \ --disable-cuda-malloc \ --use-pytorch-cross-attention \ --port 8189 \ --listen 0.0.0.0 \ /data/profiles/comfy_8189_int8_optim_timing.log 21 服务启动后检查curl http://127.0.0.1:8189/system_stats浏览器访问http://服务器IP:8189七、工作流关键参数7.1 基础图生视频参数工作流中图生视频节点width: 640, height: 640, batch_size: 1帧数由表达式计算expression: floor (a * b 1)其中a 5 b 16所以floor(5 * 16 1) 81 帧也就是说本次是640 x 640 81 帧 16 FPS7.2 采样参数工作流里使用两个KSamplerAdvanced分别对应 high noise 和 low noise 阶段。总 steps20切分点10所以实际表现为两段采样high noise0 - 10 low noise10 - 20日志中能看到两段进度条每段都是10/10。采样器euler调度器simpleCFG3.5shift5.0seed7663845173808557.3 high noise 模型节点unet_name: wan2.2_i2v_high_noise_14B_int8_lightx2v.safetensors, weight_dtype: default对应 LoRAlora_name: wan2.2_i2v_lightx2v_4steps_lora_v1_high_noise.safetensors, strength_model: 1.07.4 low noise 模型节点unet_name: wan2.2_i2v_low_noise_14B_int8_lightx2v.safetensors, weight_dtype: default对应 LoRAlora_name: wan2.2_i2v_lightx2v_4steps_lora_v1_low_noise.safetensors, strength_model: 1.0八、提交工作流如果通过 Web UI 操作可以在 ComfyUI 页面里导入/data/图生视频(video_wan2_2_14B_i2v)_modi_int8_optim.json然后点击运行。如果通过 API 提交可以使用导出的 API prompt/data/profiles/wan22_int8_optim_r2_prompt.json提交方式大致如下curl -X POST http://127.0.0.1:8189/prompt \ -H Content-Type: application/json \ -d /data/profiles/wan22_int8_optim_r2_prompt.json如果需要标准 ComfyUI API 格式可以包装成{ prompt: { ...: 这里是 workflow prompt 内容 }, client_id: your-client-id }九、实测结果9.1 第一轮结果第一轮日志Prompt executed in 00:14:32也就是872 秒第一轮里包含较多加载和初始化开销例如VAE load device: cuda:0, offload device: cpu, dtype: torch.bfloat16 CLIP/text encoder model load device: cuda:0, offload device: cpu, current: cpu, dtype: torch.float16 Wan offline INT8 loader: replaced 400 Linear layers.第一轮采样日志中能看到两段 10 step100%|██████████| 10/10 [06:3600:00, 39.67s/it] 100%|██████████| 10/10 [05:5300:00, 35.39s/it] Prompt executed in 00:14:329.2 第二轮结果也就是 797 秒第二轮在不关闭服务的情况下继续提交。模型、VAE、文本编码器已经热起来因此总耗时下降。日志结果Prompt executed in 00:13:17换算为797 秒第二轮采样日志100%|██████████| 10/10 [05:5400:00, 35.47s/it] 100%|██████████| 10/10 [05:5300:00, 35.39s/it] Prompt executed in 00:13:17可以看到第二轮两段采样都稳定在 35 秒左右一段平均 step 时间。9.3 结果汇总轮次状态耗时第一轮成功00:14:32约872 秒第二轮成功00:13:17约797 秒对应日志/data/profiles/comfy_8189_int8_optim_timing.log对应第二轮 prompt/data/profiles/wan22_int8_optim_r2_prompt.json对应第二轮 run 记录/data/profiles/wan22_int8_optim_r2_run.json十、关键日志说明10.1 单卡确认日志里显示Device: cuda:0 K100_AI : native说明本次是单卡。10.2 INT8 loader 生效日志里显示Wan offline INT8 loader custom node installed. Wan offline INT8 loader: replaced 400 Linear layers.说明 INT8 权重加载和 Linear 替换生效。10.3 注意 Flash Attention 日志日志里有Warning: sdpa adopt the new interface of flash-attn以及Using pytorch attention说明这条路线里 attention 相关实现和当时安装的 FA 包有关但本次 797 秒结果主要对应的是 INT8 optim 工作流本身。十一、常见问题11.1 这条路线用了几张卡单卡。日志中设备是cuda:0 K100_AI如果要强制单卡启动前设置export HIP_VISIBLE_DEVICES011.2 为什么第二轮更快第一轮会加载 VAE、CLIP、模型权重并执行 INT8 Linear 替换。第二轮复用已加载的模型与缓存所以总耗时更低。11.3 为什么进度条是两段 10/10Wan2.2 I2V 有 high noise 和 low noise 两个模型阶段。工作流里总 steps 是 20切分点是 10所以日志上表现为两段high noise: 10 steps low noise: 10 steps十二、结论本次在海光 DCU K100-AI 单卡上使用 ComfyUI 原生 Wan2.2 图生视频工作流加载 INT8 high/low noise 权重并通过wan_offline_int8_loader替换 400 个 Linear 层成功完成 640x640、81 帧、20 steps 的图生视频生成。最终单卡第二轮热启动耗时00:13:17约797 秒整体流程稳定适合作为单卡 INT8 路线的部署参考。