机器:
npu-smi info
+------------------------------------------------------------------------------------------------+
| npu-smi 24.1.0 Version: 24.1.0 |
+---------------------------+---------------+----------------------------------------------------+
| NPU Name | Health | Power(W) Temp(C) Hugepages-Usage(page)|
| Chip | Bus-Id | AICore(%) Memory-Usage(MB) HBM-Usage(MB) |
+===========================+===============+====================================================+
| 0 910B3 | OK | 95.2 43 0 / 0 |
| 0 | 0000:C1:00.0 | 0 0 / 0 3874 / 65536 |
+===========================+===============+====================================================+
| 1 910B3 | OK | 90.3 42 0 / 0 |
| 0 | 0000:C2:00.0 | 0 0 / 0 50449/ 65536 |
+===========================+===============+====================================================+
| 2 910B3 | OK | 90.6 43 0 / 0 |
| 0 | 0000:81:00.0 | 0 0 / 0 3404 / 65536 |
+===========================+===============+====================================================+
| 3 910B3 | OK | 94.1 44 0 / 0 |
| 0 | 0000:82:00.0 | 0 0 / 0 3405 / 65536 |
+===========================+===============+====================================================+
| 4 910B3 | OK | 96.6 47 0 / 0 |
| 0 | 0000:01:00.0 | 0 0 / 0 44930/ 65536 |
+===========================+===============+====================================================+
| 5 910B3 | OK | 92.0 44 0 / 0 |
| 0 | 0000:02:00.0 | 0 0 / 0 7206 / 65536 |
+===========================+===============+====================================================+
| 6 910B3 | OK | 100.3 46 0 / 0 |
| 0 | 0000:41:00.0 | 0 0 / 0 3389 / 65536 |
+===========================+===============+====================================================+
| 7 910B3 | OK | 95.5 47 0 / 0 |
| 0 | 0000:42:00.0 | 0 0 / 0 59668/ 65536 |
+===========================+===============+====================================================+
单卡单实例:
export ASCEND_RT_VISIBLE_DEVICES=2
export VLLM_WORKER_MULTIPROC_METHOD=spawn
source /usr/local/Ascend/ascend-toolkit/set_env.sh
source /usr/local/Ascend/nnal/atb/set_env.sh
vllm-omni serve /data/models/Wan2.1-T2V-1.3B-Diffusers \
--omni --port 8023 --boundary-ratio 0.875 \
--flow-shift 5.0 --cfg-parallel-size 2 --dtype float16
curl -X POST http://localhost:8023/v1/videos/sync \
-F "prompt=A futuristic city at sunset" \
-F "width=832" \
-F "height=480" \
-F "num_frames=81" \
-F "fps=16" \
-F "num_inference_steps=50" \
-F "guidance_scale=4.0" \
-F "seed=42" \
-o /data/cjh/omini/server_test3.mp4
耗时6min+
双卡单实例:
export ASCEND_RT_VISIBLE_DEVICES=2,3
export VLLM_WORKER_MULTIPROC_METHOD=spawn
export CFG_PARALLEL_SIZE=2
source /usr/local/Ascend/ascend-toolkit/set_env.sh
source /usr/local/Ascend/nnal/atb/set_env.sh
vllm-omni serve /data/models/Wan2.1-T2V-1.3B-Diffusers \
--omni --port 8023 --boundary-ratio 0.875 \
--flow-shift 5.0 --cfg-parallel-size 2 --dtype float16
curl -X POST http://localhost:8023/v1/videos/sync \
-F "prompt=A futuristic city at sunset" \
-F "width=832" \
-F "height=480" \
-F "num_frames=81" \
-F "fps=16" \
-F "num_inference_steps=50" \
-F "guidance_scale=4.0" \
-F "seed=42" \
-o /data/cjh/omini/server_test3.mp4
耗时3min+
模型并行策略优化
https://docs.vllm.com.cn/projects/vllm-omni/en/latest/user_guide/diffusion/parallelism_acceleration/#overview
模型并行测试结论:wan2.1
不支持
Ring / USP 长序列(长视频) 作用:减少单卡显存占用,序列越长加速越明显
支持
CFG-Parallel 固定2卡 速度×2,质量不变
作用:
CFG引导分支并行
扩散模型每步要跑两次(guidance分支 + 无guidance分支)
CFG-Parallel 让两个分支同时跑在不同GPU上
结果等价于串行50步,但时间减半
并发建议:
请求并发数:AsyncOmniDiffusion initialized with model: ... batch_size: 1;
vLLM-Omni 每次只处理 1 个请求,batch_size=1 是单实例的上限。
这不是配置问题,是架构设计决定的Diffusion Worker 的调度模式不支持同时处理多个请求。
多实例+ Nginx 负载均衡