VLLM / A3DeepSeek-V4-Flash · A3
每种布局独立记录镜像与脚本。先选拓扑,再核对具体的部署条件。
A3 / LAYOUT
1node
旧版曾验证 · 当前待复验镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
Single-node A3, DP=4 x TP=4. Already aligned with the v0.21.0rc1 reference (mtp/enforce_eager); this pass only refreshes provenance. Was hardware-verified at an earlier image; flipped to false until re-run on v0.21.0rc1.
脚本与说明
来源记录日期 2026-06-27 · 此页面不重新认定硬件验证结果
A3 / LAYOUT
1p1d
旧版曾验证 · 当前待复验镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
A3 1P1D PD separation with external online DP. Already aligned with the v0.21.0rc1 reference (mtp/enforce_eager). kv_port deviates to 36000/36100 (upstream 30000/30100): the official kv_port table reserves [20000,36000) for AscendDirectTransport on 16-NPU nodes. Was hardware-verified at an earlier image; flipped to false until re-run on v0.21.0rc1.
脚本与说明
来源记录日期 2026-06-27 · 此页面不重新认定硬件验证结果
镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
DeepSeek-V4-Flash-w8a8-mtp PD on 4x A3 (16 NPU/node), decode-heavy: 1 single-node prefill engine (DP=4 x TP=4, 4 instances 7100..7103, kv_producer, engine_id 0) + 3 INDEPENDENT single-node decode engines (each DP=16 x TP=1, 16 instances 7100..7115, kv_consumer, engine_id 1/3/5). External online DP (launch_online_dp.py + parameterized run_dp_template_{prefill,decode}.sh; ENGINE_ID/KV_PORT exported per node by run.sh). MooncakeHybridConnector, kv_connector_extra_config prefill{dp 4,tp 4}/decode{dp 16,tp 1} on every engine. Proxy load_balance_proxy_server_example.py (non-layerwise, vendored) fans 4 prefill + 48 decode endpoints. DERIVED from the verified 1p1d layout by running multiple independent same-role engines; upstream documents only 1P1D, so the multi-engine fan-out is NOT separately validated. Per-engine sizing/flags identical to 1p1d. engine_id globally unique (prefill even 0, decode odd 1/3/5); kv_port stays 36000/36100 because engines are on distinct nodes. kv_port 36000/36100 deviate from upstream 30000/30100 (official table reserves [20000,36000) for AscendDirectTransport on 16-NPU nodes). Use this decode-heavy ratio when decode is the bottleneck (short prompts, long output length) -- the usual PD imbalance for chat workloads. Deviations from upstream: /root/model; NIC/IP resolved at runtime via the spine; LD_LIBRARY_PATH=/usr/local/lib for Mooncake. Treat as a starting point.
脚本与说明
来源记录日期 2026-06-30 · 此页面不重新认定硬件验证结果
A3 / LAYOUT
2nodes
旧版曾验证 · 当前待复验镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
2x A3 mixed engine, DP=8 x TP=4 (a3/1node doubled across 2 nodes). v0.21.0rc1 refresh: migrated speculative method deepseek_mtp -> mtp (enforce_eager: true) and dropped dead env toggles (ACL_OP_INIT_MODE, ASCEND_A3_ENABLE, USE_MULTI_BLOCK_POOL, VLLM_ASCEND_ENABLE_FUSED_MC2, USE_MULTI_GROUPS_KV_CACHE). Was hardware-verified at an earlier image; flipped to false until re-run on v0.21.0rc1.
脚本与说明
来源记录日期 2026-06-27 · 此页面不重新认定硬件验证结果
镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
2 single-node prefill (DP=16) + 1 decode spanning 2 A3 nodes (DP=32), MooncakeConnectorV1, kv_port 30000/30100/30200. v0.21.0rc1 refresh: migrated speculative method deepseek_mtp -> mtp (enforce_eager: true; decode keeps num_speculative_tokens 2) and dropped dead env toggles (USE_MULTI_BLOCK_POOL, VLLM_ASCEND_ENABLE_FUSED_MC2). Topology/ports/engine_ids preserved.
脚本与说明
来源记录日期 2026-06-27 · 此页面不重新认定硬件验证结果
镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
DeepSeek-V4-Flash-w8a8-mtp PD on 4x A3 (16 NPU/node): 2 INDEPENDENT single-node prefill engines (each DP=4 x TP=4, 4 instances 7100..7103, kv_producer, engine_id 0/2) + 2 INDEPENDENT single-node decode engines (each DP=16 x TP=1, 16 instances 7100..7115, kv_consumer, engine_id 1/3). External online DP (launch_online_dp.py + parameterized run_dp_template_{prefill,decode}.sh; ENGINE_ID/KV_PORT exported per node by run.sh). MooncakeHybridConnector, kv_connector_extra_config prefill{dp 4,tp 4}/decode{dp 16,tp 1} on every engine. Proxy load_balance_proxy_server_example.py (non-layerwise, vendored) fans 8 prefill + 32 decode endpoints. DERIVED from the verified 1p1d layout by running multiple independent same-role engines; upstream documents only 1P1D, so the multi-engine fan-out is NOT separately validated. Per-engine sizing/flags are identical to 1p1d. engine_id is globally unique (prefill even, decode odd); kv_port stays 36000/36100 because engines are on distinct nodes (only engine_id must differ). kv_port 36000/36100 deviate from upstream 30000/30100: the official kv_port table reserves [20000,36000) for AscendDirectTransport on 16-NPU nodes. Deviations from upstream: /root/model; NIC/IP resolved at runtime via the spine; LD_LIBRARY_PATH=/usr/local/lib for Mooncake ascend_transport.so (ModelArts sh launch). Treat as a starting point: a multi-P/multi-D fan-out can still hit a KV-transport clash or proxy mis-route that 1p1d would not.
脚本与说明
来源记录日期 2026-06-30 · 此页面不重新认定硬件验证结果
镜像quay.io/ascend/vllm-ascend:v0.21.0rc1-a3
DeepSeek-V4-Flash-w8a8-mtp PD on 4x A3 (16 NPU/node), prefill-heavy: 3 INDEPENDENT single-node prefill engines (each DP=4 x TP=4, 4 instances 7100..7103, kv_producer, engine_id 0/2/4) + 1 single-node decode engine (DP=16 x TP=1, 16 instances 7100..7115, kv_consumer, engine_id 1). External online DP (launch_online_dp.py + parameterized run_dp_template_{prefill,decode}.sh; ENGINE_ID/KV_PORT exported per node by run.sh). MooncakeHybridConnector, kv_connector_extra_config prefill{dp 4,tp 4}/decode{dp 16,tp 1} on every engine. Proxy load_balance_proxy_server_example.py (non-layerwise, vendored) fans 12 prefill + 16 decode endpoints. DERIVED from the verified 1p1d layout by running multiple independent same-role engines; upstream documents only 1P1D, so the multi-engine fan-out is NOT separately validated. Per-engine sizing/flags identical to 1p1d. engine_id globally unique (prefill even 0/2/4, decode odd 1); kv_port stays 36000/36100 because engines are on distinct nodes. kv_port 36000/36100 deviate from upstream 30000/30100 (official table reserves [20000,36000) for AscendDirectTransport on 16-NPU nodes). Use this prefill-heavy ratio when prefill is the bottleneck (long prompts, low output length). Deviations from upstream: /root/model; NIC/IP resolved at runtime via the spine; LD_LIBRARY_PATH=/usr/local/lib for Mooncake. Treat as a starting point.
脚本与说明
来源记录日期 2026-06-30 · 此页面不重新认定硬件验证结果