inference-xpu-pytorch 25.06

更新时间:
复制为 MD 格式

本文介绍inference-xpu-pytorch 25.06版本发布记录。

Main Features and Bug Fix Lists

Main Features

  • 基础镜像PPU SDK升级至v1.5.2

  • SGLang 0.4.6.post1支持 Qwen3-235B-A22B、Deepseek V3/R1 A8W8(int8)推理。

  • 优化 Qwen3/LLaMa4 访存瓶颈 gemm 问题,性能最高提升50%。

  • 优化 Qwen3-235B-A22B MOE 性能。

Bug Fix

  • 修复v1.5.1版本上开启prefix-cache后模型推理出现乱回复的 bug。

Contents

inference-xpu-pytorch

inference-xpu-pytorch

镜像Tag

25.06-v1.5.2-vllm0.8.5-torch2.6-cu126-20250610

25.06-v1.5.2-sglang0.4.6.post1-torch2.6-cu126-20250610

应用场景

大模型推理

大模型推理

框架

pytorch

pytorch

Requirements

PPU SDK V1.5.2

PPU SDK V1.5.2

系统组件

  • Ubuntu 24.04

  • Python 3.12

  • Torch 2.6.0

  • CUDA 12.6

  • ACCL-P 1.5.2-9

  • EIC 1.3.8

  • accelerate 1.7.0

  • apex 0.1

  • vllm 0.8.5+cu126

  • diffusers 0.33.1

  • transformers 4.51.3

  • flash-attn 2.5.6

  • imageio 2.37.0

  • imageio-ffmpeg 0.6.0

  • ray 2.46.0

  • xformers 0.0.29.post1

  • triton 3.2.0

  • flashinfer-python 0.2.2.post1

  • xgrammar 0.1.18

  • xfuser 0.4.3.post3

  • Ubuntu 24.04

  • Python 3.12

  • Torch 2.6.0

  • CUDA 12.6

  • ACCL-P 1.5.2-9

  • EIC 1.3.8

  • accelerate 1.7.0

  • diffusers 0.33.1

  • vllm 0.7.2+cu126

  • sglang 0.4.6.post1

  • sgl-kernel 0.1.0

  • transformers 4.51.3

  • flash-attn 2.5.6

  • flash_mla 1.0.0

  • flashinfer-python 0.2.3

  • imageio 2.37.0

  • imageio-ffmpeg 0.6.0

  • ray 2.10.0

  • xformers 0.0.29.post1

  • triton 3.1.0

  • xgrammar 0.1.19

  • torchao 0.11.0

  • xfuser 0.4.3.post3

镜像Asset

说明

通过公网拉取ACS AI容器镜像需要先获取鉴权密钥。建议您使用VPC方式加速拉取AI容器镜像,减少镜像拉取的时间。

公网镜像

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:25.06-v1.5.2-vllm0.8.5-torch2.6-cu126-20250610

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:25.06-v1.5.2-sglang0.4.6.post1-torch2.6-cu126-20250610

VPC镜像

  • acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}

    {region-id}为您使用的ACS产品所在的开服地域,比如:cn-beijing、cn-wulanchabu等。
    {image:tag}为实际镜像的名称和Tag。

E2E性能评估

vLLM在线推理模式下,控制TTFT<3s 并且 TPOT< 100ms ,测试满足条件的最大并发量,对比吞吐。

  • vllm0.8.5:

    • Qwen3-235B-A22B(bf16)模型单机 Output Token Throughput 性能是 V1.5.1版本镜像的 132%。

    • Qwen3-235B-A22B-INT8 模型单机 Output Token Throughput 性能是bf16模型的 122%。

image.png

Quick Start

以下示例内容仅通过Docker方式拉取inference-xpu-pytorch镜像,并使用Qwen2.5-7B-Instruct模型测试推理服务。

说明

ACS中使用inference-xpu-pytorch镜像需要通过控制台创建工作负载界面的制品中心页面选取,或者通过YAML文件指定镜像引用。

  1. 拉取推理容器镜像。

    说明

    通过公网拉取ACS AI容器镜像需要先获取鉴权密钥。建议您使用VPC方式加速拉取AI容器镜像,减少镜像拉取的时间。

    docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:[tag]
  2. 下载modelscope格式的开源模型。

    pip install modelscope
    cd /mnt
    modelscope download --model Qwen/Qwen2.5-7B-Instruct --local_dir ./Qwen2.5-7B-Instruct
  3. 启动以下命令进入容器。

    docker run -d -t --network=host --privileged --init --ipc=host \
    --ulimit memlock=-1 --ulimit stack=67108864  \
    -v /mnt/:/mnt/ \
    egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:[tag]
  4. 执行推理测试,测试vLLM推理对话功能。

    1. 启动Sever服务。

      python3 -m vllm.entrypoints.openai.api_server \
      --model /mnt/Qwen2.5-7B-Instruct \
      --trust-remote-code --disable-custom-all-reduce \
      --tensor-parallel-size 1
    2. Client端进行测试。

      curl http://localhost:8000/v1/chat/completions \
          -H "Content-Type: application/json" \
          -d '{
          "model": "/mnt/Qwen2.5-7B-Instruct",  
          "messages": [
          {"role": "system", "content": "你是个友善的AI助手。"},
          {"role": "user", "content": "介绍一下深度学习。"}
          ]}'

      输出如下所示:

      image.png

      更多关于vLLM的使用方法请参见vLLM

使用建议

  • 使用本镜像运行DeepSeek R1(671B)、Qwen3量化模型,支持的量化方法如下:

    • DeepSeek R1(671B):

      • VLLM 0.8.5:支持AWQ(w4a16)、GPTQ (w4a16、w8a16)、per-token/per-channel a8w8(int8)量化方案。

      • SGLang 0.4.6post1:不支持AWQ(w4a16)和GPTQ (w4a16、w8a16)量化方案(存在社区已知问题),支持per-token/per-channel A8W8(int8)量化方案(运行 A8W8(int8)量化模型需要加 --quantization w8a8_int8选项)。

    • Qwen3:

      • VLLM 0.8.5:支持AWQ(w4a16)、GPTQ (w4a16、w8a16)、per-token/per-channel a8w8(int8)量化方案。

      • SGLang 0.4.6post1:支持AWQ(w4a16)、GPTQ (w4a16、w8a16)、per-token/per-channel A8W8(int8)量化方案 。(SGlang0.4.6post1 上通过AWQGPTQ运行量化模型需要加 --quantization moe_wna16选项; 运行 A8W8(int8)量化模型需要加 --quantization w8a8_int8选项)。

  • 暂时不支持PPU SDK 1.5.11.5.2 Release Note中提到的DeepEPsailSHMEM功能,支持时间待定。

  • 建议配合“1.5.1”及以上版本驱动使用本镜像获得最佳性能,设置方法请参考ACS GPU Pod指定GPU型号和驱动版本GPU驱动版本说明

  • 本镜像内置环境变量NCCL_SOCKET_IFNAME需要根据使用场景动态调整:

    • 当单pod只申请了1/2/4/8卡进行推理任务时:需要设置NCCL_SOCKET_IFNAME=eth0(本推理镜像内默认配置)。

    • 当单pod申请了整机的16卡(此时您可以使用HPN高网)进行推理任务时:需要设置NCCL_SOCKET_IFNAME=hpn0

Known Issues

  • Qwen3模型:

    • Qwen3-235B-A22B存在推理精度问题,建议增加环境变量 ACEXT_ENABLE_MOE_GEMV=0规避,后续版本会修复。

  • Qwen2.5模型:

    • vLLM镜像运行Qwen2.5-omni模型时会出现“ModuleNotFoundError: No module named 'vllm.vllm_flash_attn.layers' ”,此问题由vLLM 0.8.5社区已知问题触发,待vLLM版本更新后修复。

  • DeepSeek R1模型:

    • 测试DeepSeek R1模型 --max-model-len 设置需要小于 80k,否则可能会在运行中出现 OOM。

  • 稳定性问题:

    • vLLM 多卡推理时可能会出现使用 mp_distributed_executor 错误的情况,需设置 VLLM_WORKER_MULTIPROC_METHOD=spawn避免该问题,可参考开源社区

    • vLLM 多卡推理结束后会随机出现进程退出错误的社区已知问题,可参考开源社区

  • 性能问题:

    • MOE类大模型使用Autotune工具可以提升性能 ,VLLM支持通过硬件相关的fused_moe kernel配置文件启动kernel以提升性能的优化功能。