Skip to main content
This page focuses on optimal configuration and benchmark results for GLM-5.1 on the Ascend NPU. For environment setup, model weight download, feature configuration, and deployment instructions, etc., see the GLM-5.1 Model Tutorial.On A3 each card has 2 dies, so --tp-size is twice the card count; see Ascend NPU Reference for details.

Low Latency

High Throughput

Optimal Configuration

GLM-5.1 W4A8 16P IN3K5 OUT1K5 50ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 16 Deploy Mode: PD Mixed Quantization: W4A8 INT8 Dataset: 3.5k+1.5k TPOT: 50ms

Model Deployment

Command

Benchmark

We tested it based on the RANDOM dataset.
Command

GLM-5.1 W4A8 1P1D 32P IN128K OUT1K 56.4ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 32 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 128k+1k TPOT: 56.4ms TTFT: 13.1s

Model Deployment

Command
Command

Benchmark

We tested it based on the RANDOM dataset.
Command

GLM-5.1 W4A8 1P1D 32P IN16K OUT1K 50ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 32 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 16k+1k TPOT: 50ms

Model Deployment

Command
Command

Benchmark

We tested it based on the RANDOM dataset.
Command

GLM-5.1 W4A8 1P1D 32P IN64K OUT1K 55.2ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 32 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 64k+1k TPOT: 55.2ms TTFT: 7.58s

Model Deployment

Command
Command

Benchmark

We tested it based on the RANDOM dataset.
Command

GLM-5.1 W4A8 1P1D 32P IN64K OUT1K 50ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 32 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 64k+1k TPOT: 50ms

Model Deployment

Command
Command

Benchmark

We tested it based on the RANDOM dataset.
Command

GLM-5.1 W4A8 1P1D 32P IN65K OUT1K5 PREFIX90 25ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 32 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 65k+1.5k (90% prefix cache hit rate) TPOT: 25ms

Model Deployment

Command
Command

Benchmark

We tested it based on the generated-shared-prefix dataset with 90% cache hit (repeat_rate = 0.9): --gsp-system-prompt-len 59904 = int(66560 * 0.9) is the shared prefix portion. --gsp-question-len 6656 = int(66560 * (1 - 0.9)) is the unique per-request suffix. --gsp-num-groups 1 keeps all requests in one prefix group for maximum cache reuse.
Command

GLM-5.1 W4A8 1P1D 48P IN65K OUT1K5 PREFIX100 33ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 48 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 65k+1.5k (100% prefix cache hit rate) TPOT: 33ms

Model Deployment

Command
Command

Benchmark

We tested it based on the RANDOM dataset.
Command

GLM-5.1 W4A8 2P1D 48P IN128K OUT1K PREFIX90 50ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 48 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 128k+1k (90% prefix cache hit rate) TPOT: 50ms

Model Deployment

Command
Command

Benchmark

We tested it based on the generated-shared-prefix dataset with 90% cache hit (repeat_rate = 0.9): --gsp-system-prompt-len 117964 = int(131072 * 0.9) is the shared prefix portion. --gsp-question-len 13107 = int(131072 * (1 - 0.9)) is the unique per-request suffix. --gsp-num-groups 1 keeps all requests in one prefix group for maximum cache reuse.
Command

GLM-5.1 W4A8 4P1D 48P IN64K OUT1K PREFIX90 50ms

Model: GLM-5.1 Hardware: Atlas 800I A3 Cards: 48 Deploy Mode: PD Disaggregation Quantization: W4A8 INT8 Dataset: 64k+1k (90% prefix cache hit rate) TPOT: 50ms

Model Deployment

Command
Command

Benchmark

We tested it based on the generated-shared-prefix dataset with 90% cache hit (repeat_rate = 0.9): --gsp-system-prompt-len 58982 = int(65536 * 0.9) is the shared prefix portion. --gsp-question-len 6553 = int(65536 * (1 - 0.9)) is the unique per-request suffix. --gsp-num-groups 1 keeps all requests in one prefix group for maximum cache reuse.
Command