shishi a65849b77d fix(dsv4): use all 16 dies with TP4/DP4 + TP8/DP2 + TP16/DP1
The A3 910C has 16 dies (8 cards x 2 dies/card), and vllm-ascend's
tensor-parallel-size / data-parallel-size address DIES, not cards. The
old configs (2/4, 4/2, 8/1) all used only 8 dies = 4 cards, leaving half
the node idle. Switch to configs that use all 16 dies, and add per-TP
parameter overrides since each TP has a very different per-die memory
budget.

Why the old configs were wrong:
- A3 TP=4 (4 dies) is the per-CARD equivalent of H20 TP=4 (4 cards),
  not a fair comparison. An A3 node has 2x the compute of an 8-card H20,
  so benchmarking at 8 dies understates the A3 and never exercises the
  cross-card / full-NVLink topology.
- TP*DP must equal 16 to use all dies on the A3 node.

New PARALLEL_CONFIGS (all use 16 dies):
- TP=4  DP=4: 4 dies/replica x 4 replicas, ~39 GiB weights/die
- TP=8  DP=2: 8 dies/replica x 2 replicas, ~35 GiB weights/die
- TP=16 DP=1: 16 dies/replica x 1 replica,  ~17.5 GiB weights/die

Per-TP overrides (mirrors the glm52 6c81183 pattern):
- TP4:  max_model_len=32768  max_num_seqs=128  (tight KV cache)
- TP8:  max_model_len=65536  max_num_seqs=256  (balanced)
- TP16: max_model_len=131072 max_num_seqs=256  (max KV cache)

Changes:
- config.env: PARALLEL_CONFIGS -> "4 4"/"8 2"/"16 1"; add TP4_/TP8_/TP16_
  env vars for per-TP gpu_mem_util/max_model_len/max_num_seqs.
- start_vllm_docker.sh: case "$TP" overrides the three params after
  sourcing config.env, so the actual launch args match the per-TP budget.
- run_adaptive_concurrency_add16.sh: engine_build_server_args gets the
  same case "$TP" so the recorded server_cmd.txt stays consistent with
  the real launch.
2026-07-29 13:37:26 +08:00
..