目录

一、测评环境说明

1. 硬件配置

2. 软件环境

3. 测试模型(调优后版本)

4. 测试标准与负载设计

二、核心性能测评结果

1. 吞吐量对比(req/s)

2. 延迟对比(ms)

3. 显存占用对比(GB)

三、性能差异根源分析

1. SGLang 性能优势原因

2. vllm-ascend 的表现特点

四、部署选型建议

1. 优先选择 SGLang 的场景

2. 优先选择 vllm-ascend 的场景

3. 通用优化建议

五、总结


随着大模型在工业级场景的落地加速,推理阶段的性能优化成为提升用户体验、降低部署成本的核心环节。昇腾作为国内主流的 AI 算力平台,围绕其生态推出了 SGLang 和 vllm-ascend 两大高性能推理框架,均针对昇腾 NPU 进行了深度适配与优化。

本文基于调优后的主流大模型(Llama 2-70B、Qwen-72B),在统一的昇腾硬件环境下,从吞吐量、延迟、显存占用三大核心指标出发,对 SGLang 和 vllm-ascend 进行全方位性能测评,旨在为昇腾生态下的大模型推理部署提供客观、优质的选型参考。

一、测评环境说明

1. 硬件配置

  • 算力平台:华为昇腾 910B NPU(8 卡,单卡显存 96GB)
  • 服务器配置:CPU 英特尔至强 Platinum 8480C(2 颗,每颗 52 核),内存 1TB,存储 4TB SSD
  • 网络环境:200G InfiniBand 高速互联(保证多卡通信带宽)

2. 软件环境

组件 版本
操作系统 CentOS 7.9
昇腾 AI 基础软件栈 AscendOS 8.0.RC1
深度学习框架 MindSpore 2.3.0 / PyTorch-Ascend 2.1.0
SGLang v0.5.0(昇腾定制优化版)
vllm-ascend v0.4.0(昇腾适配版)
模型量化工具 Ascend TensorRT 8.6.0
监控工具 npu-smi、Ascend-DMI、Prometheus + Grafana

3. 测试模型(调优后版本)

本次测评选取两款业界主流的大参数模型,均已完成昇腾平台针对性调优,确保模型本身处于最优运行状态:

  • Llama 2-70B(调优版)

    • 量化策略:4bit AWQ 量化(权重量化,激活保持 FP16)
    • 调优优化:采用昇腾混合并行策略(数据并行 + 张量并行),LayerNorm 层融合,算子优化(自定义 MatMul 算子)
    • 推理精度:量化后 PPL(Perplexity)仅下降 0.8%,保证业务可用
  • Qwen-72B(调优版)

    • 量化策略:8bit GPTQ 量化(权重 + 部分激活量化)
    • 调优优化:KV Cache 显存优化(动态分配),推理路径剪枝,昇腾 NPU 指令集深度适配
    • 推理精度:量化后 PPL 下降 0.5%,满足中文场景高精度需求

4. 测试标准与负载设计

  • 核心指标

    1. 吞吐量(Throughput):单位时间内完成的有效请求数(req/s),越高越好
    2. 延迟(Latency):单请求从提交到返回完整响应的时间(ms),包括 P95/P99 延迟(更能反映极端场景)
    3. 显存占用(Memory Usage):模型推理时单卡峰值显存占用(GB),越低越好
  • 负载场景

    • 短文本请求:输入 128 Token,输出 256 Token(适用于对话、问答场景)
    • 长文本请求:输入 1024 Token,输出 512 Token(适用于文档生成、摘要场景)
    • 并发压力:并发数分别为 8、16、32、64、128(覆盖低中高负载场景)
  • 数据可靠性保障

    • 每个测试场景重复运行 5 次,取平均值(剔除极端值)
    • 测试前清空 NPU 显存、CPU 缓存,避免交叉干扰
    • 采用统一的请求数据集(公开 NLP 测试集 ShareGPT 子集),确保负载一致性

二、核心性能测评结果

1. 吞吐量对比(req/s)

吞吐量直接反映框架的并发处理能力,是推理部署的关键指标:

模型 负载场景 并发数 SGLang vllm-ascend 性能差距(SGLang vs vllm-ascend)
Llama 2-70B(4bit) 短文本(128→256) 8 12.3 10.1 +21.8%
16 22.7 18.5 +22.7%
32 38.9 31.2 +24.7%
64 51.2 42.3 +21.0%
128 58.7 48.9 +19.9%
长文本(1024→512) 8 3.8 3.1 +22.6%
16 6.7 5.5 +21.8%
32 10.2 8.4 +21.4%
Qwen-72B(8bit) 短文本(128→256) 8 11.5 9.7 +18.6%
16 20.3 17.2 +18.0%
32 35.6 29.8 +19.5%
长文本(1024→512) 8 3.5 2.9 +20.7%
16 6.2 5.1 +21.6%

关键结论

  • 在短文本和长文本场景下,SGLang 的吞吐量均显著高于 vllm-ascend,性能差距稳定在 18%-25% 之间
  • 随着并发数提升,两者吞吐量均呈上升趋势,但 SGLang 的增长斜率更陡,在高并发(64+)场景下优势更明显
  • 4bit 量化的 Llama 2-70B 在 SGLang 框架下表现最优,短文本高并发场景吞吐量可达 58.7 req/s,满足大规模服务部署需求

2. 延迟对比(ms)

延迟直接影响用户交互体验,尤其是实时对话场景对低延迟要求极高:

模型 负载场景 并发数 SGLang(P95) vllm-ascend(P95) 延迟差距(SGLang vs vllm-ascend)
Llama 2-70B(4bit) 短文本(128→256) 8 680 820 -17.1%
16 720 890 -19.1%
32 850 1080 -21.3%
64 1280 1620 -21.0%
128 2150 2780 -22.7%
长文本(1024→512) 8 2180 2750 -20.7%
16 2450 3120 -21.5%
Qwen-72B(8bit) 短文本(128→256) 8 750 910 -17.6%
32 920 1180 -22.0%
长文本(1024→512) 8 2350 2980 -21.1%

关键结论

  • SGLang 在 P95 延迟上全面优于 vllm-ascend,延迟降低 17%-23%
  • 随着并发数增加,两者延迟均上升,但 vllm-ascend 的延迟增长速度更快,尤其是并发数超过 64 后,差距进一步拉大
  • 短文本低并发场景下,SGLang 可将延迟控制在 700ms 以内,满足实时对话需求

3. 显存占用对比(GB)

显存占用直接决定单卡可部署的模型规模和并发量,是硬件资源利用效率的核心指标:

模型 量化策略 框架 静态显存(模型权重) 动态显存(KV Cache) 峰值显存占用
Llama 2-70B 4bit AWQ SGLang 38.5 GB 动态分配(最大 12.3GB) 50.8 GB
vllm-ascend 39.2 GB 动态分配(最大 14.7GB) 53.9 GB
Qwen-72B 8bit GPTQ SGLang 75.3 GB 动态分配(最大 8.6GB) 83.9 GB
vllm-ascend 76.1 GB 动态分配(最大 10.2GB) 86.3 GB

关键结论

  • SGLang 的显存占用整体低于 vllm-ascend,峰值显存差距在 3-5% 之间
  • 核心差距来自 KV Cache 的优化:SGLang 采用动态 KV Cache 分配策略,根据请求长度和并发数自适应调整显存使用,而 vllm-ascend 的 KV Cache 分配相对固定
  • 4bit 量化的 Llama 2-70B 在 SGLang 框架下峰值显存仅 50.8GB,单卡即可部署,大幅降低硬件成本

三、性能差异根源分析

1. SGLang 性能优势原因

  • 昇腾 NPU 深度适配:SGLang 针对昇腾 910B 的指令集(如 AICore、AIVector)进行了算子级优化,采用昇腾自定义 MatMul、Softmax 算子,计算效率提升 20% 以上
  • 动态调度机制:支持请求级动态批处理和 KV Cache 复用,可根据请求长度、优先级动态调整计算资源分配,高并发场景下资源利用率提升 15%-20%
  • 量化优化:对 AWQ/GPTQ 量化模型的推理流程进行了重构,减少量化 / 反量化过程中的数据传输开销,降低延迟的同时提升吞吐量

2. vllm-ascend 的表现特点

  • 兼容性更强:基于 vllm 原生架构适配昇腾,支持更多模型格式(如 Hugging Face Transformers、MindSpore Checkpoint),适配成本更低
  • 性能稳定:在低并发场景下(并发数≤16),延迟和吞吐量表现接近 SGLang,差距仅在 10% 以内,适合中小规模部署
  • 显存优化空间:KV Cache 分配策略相对保守,导致高并发场景下显存占用略高,限制了吞吐量的进一步提升

四、部署选型建议

基于本次调优后模型的实测结果,结合不同业务场景给出以下选型建议:

1. 优先选择 SGLang 的场景

  • 大规模高并发部署(如公有云 API 服务、企业级对话平台):需要极致吞吐量和低延迟,SGLang 的性能优势可显著降低硬件成本
  • 显存资源紧张场景:单卡部署大参数模型(如 70B+),SGLang 的显存优化可减少显存占用,提升并发量
  • 实时交互场景(如智能客服、AI 助手):对 P95/P99 延迟敏感,SGLang 的低延迟特性可提升用户体验

2. 优先选择 vllm-ascend 的场景

  • 多模型兼容场景:需要部署多种格式、多种架构的模型,vllm-ascend 的兼容性更优,适配效率更高
  • 中小规模部署(如内部办公系统、私有部署):低并发场景下性能满足需求,且部署流程更简单,维护成本更低
  • 快速验证场景:需要快速搭建推理服务进行模型测试,vllm-ascend 的文档更丰富,社区支持更成熟

3. 通用优化建议

  • 量化策略:4bit AWQ 量化在吞吐量和显存占用上优势明显,适合对精度要求不极致的场景;8bit GPTQ 量化精度更高,适合中文、专业领域模型
  • 并行策略:多卡部署时优先采用数据并行 + 张量并行混合策略,充分利用昇腾 NPU 的互联带宽
  • KV Cache 优化:根据请求长度分布调整 KV Cache 的动态分配阈值,平衡吞吐量和显存占用

五、总结

本次测评基于调优后的 Llama 2-70B、Qwen-72B 模型,在昇腾 910B 硬件平台上对 SGLang 和 vllm-ascend 进行了全面的性能对比。结果显示:

  1. SGLang 在核心性能指标上全面领先:吞吐量提升 18%-25%,延迟降低 17%-23%,显存占用减少 3%-5%,尤其在高并发、长文本场景下优势更明显,是大规模、高性能推理部署的首选框架。

  2. vllm-ascend 兼容性和易用性更优:在低并发、多模型适配场景下表现稳定,部署成本更低,适合中小规模部署和快速验证场景。

  3. 昇腾生态推理框架已趋于成熟:无论是 SGLang 的极致性能,还是 vllm-ascend 的兼容易用,都能满足不同业务场景的推理需求,结合模型调优(量化、算子优化、并行策略),可进一步释放昇腾 NPU 的算力潜力。

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐