Ascend-SACT/Qwen3-30B-A3B
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

环境配置:

名称版本
驱动程序24.1
CANN8.2
vllm-ascend0.11.0.RC2

环境变量:

export HCCL_OP_EXPANSION_MODE="AIV"
export HCCL_BUFFSIZE=512
export NPU_MEMORY_FRACTION=0.95
export PYTORCH_NPU_ALLOC_CONF=expandable_segments:True
export MINDIE_ASYNC_SCHEDULING_ENABLE=1
export OMP_PROC_BIND=false
export OMP_NUM_THREADS=10

export LD_PRELOAD=/usr/lib/"(uname -i)"-linux-gnu/libjemalloc.so.2:\LD_PRELOAD
注:若 libjemalloc.so.2 文件不存在,可使用 yum install jemalloc 命令进行安装,安装完成后重新启用

服务化推理:

vllm serve /app/models/Qwen/Qwen3-30B-A3B/
--served-model-name qwen3
--async-scheduling
--tensor-parallel-size 4
--port 8022
--data-parallel-size 1
--max-num-seqs 32
--max-model-len 20480
--max-num-batched-tokens 204800
--gpu-memory-utilization 0.9
--trust-remote-code
--additional-config '{"enable_cpu_binding":true}'
--compilation-config '{"cudagraph_mode": "FULL_DECODE_ONLY"}'

接入 qk_rmsnorm_rope 融合算子

参考链接: https://github.com/Angazenn/vllm/commit/c78796f#diff-3ffb829a39ab2b3e4706aa28f5e476815f36c3a87b98d6a66514ebedc8f3ffb4\ 修改完成后需安装 tritont-ascend
wget https://vllm-ascend.obs.cn-north-4.myhuaweicloud.com/vllm-ascend/triton_ascend-3.2.0.dev20250914-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl\ pip install triton_ascend-3.2.0.dev20250914-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl

开启异步调度:

--async-scheduling

关闭后处理:

客户端请求时,将 temperature 设置为 0.0,并注释掉 top_p 和 top_k 参数

将 PA 算子替换为 FIA,合并 PR 至代码目录

https://github.com/vllm-project/vllm-ascend/pull/4524/files\ git remote add repoB https://github.com/Angazenn/vllm-ascend.git\ git fetch repoB
git checkout v0.11.0rc2
git cherry-pick 782505fb61e77231861b76bf8513a84ad62c3237

CPU 绑核:

--additional-config '{"enable_cpu_binding":true}'

系统性能调试:

sysctl -w vm.swappiness=0
sysctl -w kernel.numa_balancing=0
sysctl kernel.sched_migration_cost_ns=50000

性能测试对比:

初始命令直接启动服务的性能结果: 端到端延迟(E2EL)为 95 秒

开启算子入图、接入 qk_rmsnorm_rope 融合算子及异步调度优化点后: 端到端延迟(E2EL)为 79 秒

关闭后处理并启用 libjemalloc 后的测试结果: 端到端延迟(E2EL)为 58 秒

将 PA 算子替换为 FIA 后的测试结果: 端到端延迟(E2EL)为 55 秒

完成绑核及系统性能调优后的测试结果: 端到端延迟(E2EL)为 52 秒

优化措施汇总:

措施收益
开启 FULL_DECODE_ONLY
接入 qk_rmsnorm_rope
--async-scheduling
端到端时延下降16秒
关闭后处理
使用jemalloc库
端到端时延下降21秒
替换PA算子为FIA端到端时延下降3秒
绑核及系统性能调优端到端时延下降3秒