inference-xpu-pytorch 25.04, inference-xpu-pytorch 25.04

更新时间:
复制 MD 格式

These release notes describe the 25.04 release of inference-xpu-pytorch.

Key features and bug fixes

New features

  • The base image is upgraded to PPU SDK v1.5.0.

  • The vLLM image is upgraded to CUDA 12.6 and PyTorch 2.6.0.

  • SGLang is upgraded to v0.4.4.post3.

  • ACCL-P is upgraded to v1.5.0-9 and EIC is upgraded to 1.3.7.1-v2504.

Bug fixes

None.

Image contents

inference-xpu-pytorch

inference-xpu-pytorch

Image tag

25.04-v1.5.0-vllm0.7.3-torch2.6-cu126-20250417

25.04-v1.5.0-sglang0.4.4.post3-torch2.5-cu123-20250418

Application scenario

LLM inference

LLM inference

Framework

pytorch

pytorch

Requirements

PPU SDK v1.5.0

PPU SDK v1.5.0

System components

  • Ubuntu 22.04

  • Python 3.10

  • Torch 2.6.0

  • CUDA 12.6

  • ACCL-P v1.5.0-9

  • accelerate 1.6.0

  • vllm 0.7.3+cu126

  • transformers 4.51.3

  • flash-attn 2.5.6

  • ray 2.10.0

  • xformers 0.0.27

  • triton 3.2.0

  • diffusers 0.33.1

  • Ubuntu 22.04

  • Python 3.10

  • Torch 2.5.1

  • CUDA 12.3

  • ACCL-P v1.5.0-9

  • accelerate 1.6.0

  • vllm 0.7.2+cu123

  • sglang 0.4.4.post3

  • sgl-kernel 0.0.5.post4

  • flashinfer-python 0.2.3

  • transformers 4.50.0

  • flash-attn 2.5.6

  • ray 2.10.0

  • xformers 0.0.27

  • triton 3.1.0

Image references

Public image

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:25.04-v1.5.0-vllm0.7.3-torch2.6-cu126-20250417

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:25.04-v1.5.0-sglang0.4.4.post3-torch2.5-cu123-20250418

VPC images

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

    {region-id} is the ID of the region where your Container Service for Kubernetes (ACK) cluster is located, such as cn-beijing or cn-wulanchabu.
    {image:tag} is the actual image name and tag.

Quick start

The following example shows how to pull the inference-xpu-pytorch image using Docker and test the inference service with the Qwen2.5-7B-Instruct model.

Note

To use the inference-xpu-pytorch image in Container Service for Kubernetes (ACK), you can select it from the artifact center page when you create a workload in the Console, or specify the image reference in a YAML file.

  1. Pull the inference image.

    docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/inference-xpu-pytorch:[tag]
  2. Download the open-source model in ModelScope format.

    pip install modelscope
    cd /mnt
    modelscope download --model Qwen/Qwen2.5-7B-Instruct --local_dir ./Qwen2.5-7B-Instruct
  3. Run the following command to start and enter the container.

    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. Run an inference test to verify the conversational inference feature of vLLM.

    1. Start the server.

      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. Run a test on the client.

      curl http://localhost:8000/v1/chat/completions \
          -H "Content-Type: application/json" \
          -d '{
          "model": "/mnt/Qwen2.5-7B-Instruct",  
          "messages": [
          {"role": "system", "content": "You are a friendly AI assistant."},
          {"role": "user", "content": "Tell me about deep learning."}
          ]}'

      The following output is returned:

      image.png

      For more information about using vLLM, see the vLLM documentation.

Known issues

  • DeepSeek

    • When testing the DeepSeek model, the --max-model-len setting must be < 80k. Otherwise, you may encounter an out-of-memory (OOM) error at runtime.

    • Due to a known community issue, SGLang does not support GPTQ-quantized models.

  • Performance issues

    • For mixture-of-experts (MoE) models, using the Autotune tool can improve performance. vLLM can improve performance by using hardware-specific fused_moe kernel configuration files.

  • Quantization issues

    • By default, the LLM uses the Marlin Kernel to accelerate inference for models quantized with GPTQ, AWQ, W8A8, or WOQ. Alternatively, you can use vLLM's original quantization inference kernels by explicitly setting the quantization parameter. For example, you can specify values such as marlin, w8a8, awq, gptq, gptq_acext, or awq_acext. However, the acext kernels currently do not support quantization with act_order=True or GPTQ-Int8 quantized weights. This will be optimized in a future version.

    • vLLM FP8 quantization depends on the SM89/90 architecture and has not been adapted or optimized for PPUs. A support plan for PPUs is not yet available.

    • VLLM dense A8W8 quantization integrates with the acext library, and performance requires further optimization. MoE W8A8 quantization is not currently supported and is planned for the next release.

    • You can load DPSK FP8 weights and perform W8A16 quantization inference. The performance is comparable to BF16.

    • vLLM uses vllm-flash-attn as the default attention backend. Its performance on PPU does not yet match that of the GPU version. This will be improved in a future release.

  • Stability issues