sskj/platforms/README.md
shishi 46e79d63e7 feat(platform): add Ascend 910C NPU platform support
- platforms/ascend_910c.env: 8-card 910C config (16 dies, 64GB HBM/die),
  Ascend Docker Runtime, ASCEND_VISIBLE_DEVICES device selection
- scripts/common/platform.sh: auto-detect 910C via npu-smi + Huawei PCI IDs
- scripts/common/npu_smi_sampler.py: standalone npu-smi -> nvidia-smi CSV
  sampler so parse_backend.py needs no changes
- experiments/910c/glm52_910c_vllm_tp_dp_matrix/: GLM-5.2 (w4a8c8) experiment,
  model present on host, ready for smoke after image load
- experiments/910c/dsv4_910c_vllm_tp_dp_matrix/: DSV4-Flash experiment
  (placeholder MODEL_PATH, weights not yet downloaded)
- envs/ASCEND_910C_ENV_SETUP.md: full onboarding guide (permissions, image
  load, Ascend Docker Runtime, NPU monitor, known pitfalls)
- Both experiments: TP2/DP4 + TP4/DP2 + TP8/DP1, matrix.json capped at 128K
  context per 64GB HBM/die
2026-07-27 22:00:05 +08:00

2.1 KiB
Raw Permalink Blame History

Platform Configurations

Each .env file in this directory describes one accelerator platform. They are meant to be sourced by benchmark scripts through scripts/common/platform.sh, not executed directly.

Usage

# Default platform for the current machine
bash experiments/dsv4_p800_sglang/run_bench.sh

# Explicitly select a platform
PLATFORM=kunlun_p800 bash experiments/dsv4_p800_sglang/run_bench.sh

Current platforms

File Chip/Accelerator Engine Notes
ascend_910c.env Huawei Ascend 910C vllm-ascend Docker-based8 卡 16 die / 64GB HBMAscend Docker Runtime 为默认 runtimeenvs/ASCEND_910C_ENV_SETUP.md
kunlun_p800.env Kunlun P800 XPU sglang-xpu Docker-based SGLang serving image
nvidia_h200.env NVIDIA H200 vllm-dspark Native host virtual environments
nvidia_h20.env NVIDIA H20 vllm / sglang Docker-basedvllm-openai / sglang 官方镜像)
nvidia_rtx6000d.env NVIDIA RTX 6000D vllm / sglang Docker-basedSM120 部署见 envs/SM120_DSV4_DEPLOYMENT_GUIDE.md

What belongs here

  • Chip/accelerator identity (CHIP, ACCELERATOR, HARDWARE, ENGINE).
  • Device selection environment variables.
  • Platform-wide paths that rarely change (model root, default port).
  • Container image / interpreter paths for Docker-based platforms.
  • Native interpreter / venv paths for host-based platforms.

What does NOT belong here

  • Specific model names or experiment scenarios — those go in experiments/<name>/config.env.
  • Engine-specific launch flags — those go in the experiment's start_server.sh or run_bench.sh.

Adding a new platform

  1. Create platforms/<chip>.env with at least CHIP, ACCELERATOR, HARDWARE, ENGINE, DEFAULT_PORT, MODEL_ROOT.
  2. If the platform runs inside Docker, set DOCKER_IMAGE, CONTAINER_NAME, CONTAINER_PYTHON, and PATCH_ROOT (see kunlun_p800.env).
  3. If the platform runs natively on the host, set the relevant venv paths (see nvidia_h200.env).
  4. Add a row to the table above and write a quick-start experiment under experiments/<name>/.