sskj/experiments/h20/dsv4_dspark_h20_vllm_tp_dp_matrix
yy-fighting 080e095ece chore(repo): 瘦身规范 - 忽略编译产物/JIT缓存/raw_outputs,取消跟踪618个垃圾文件
- .gitignore 新增规范:实验目录只提交 代码 + report.md + results.json(小体量汇总)
- 忽略: *.o/*.so/*.ninja*/*.cubin, sglang_sm120_cache/, vllm_sm120_cache/,
  *_sm120_cache/, experiments/**/runtime/, bench-output/, experiments/**/raw_outputs/
- 修正原 experiments/*/runtime/ 规则过窄(只匹配一层) -> experiments/**/runtime/
- git rm --cached 取消跟踪 618 个已入库的缓存/产物/原始日志(文件保留在本地工作区)
- 当前 HEAD 减少约 83MB 跟踪体积; 历史体积需另做 filter-branch 重写(本次不做)
- results.json 保留(28个共0.99MB, compare.py/文档依赖)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 09:46:46 +00:00
..

DSV4 DSpark H20 vLLM TP×DP Matrix Benchmark

NVIDIA H20 + vLLM (Docker) + DeepSeek-V4-Flash-DSpark TP×DP matrix benchmark.

Adapted from experiments/h20/dsv4_h20_vllm_tp_dp_matrix, with the model swapped to /data1/hf_models/DeepSeek-V4-Flash-DSpark and DSpark speculative decoding enabled (aligned with experiments/h200/dsv4_h200_vllm_dspark_vs_default):

  • --spec-method dspark --spec-model <MODEL_PATH> --spec-tokens 5
  • --tokenizer-mode deepseek_v4 --reasoning-parser deepseek_v4
  • --no-disable-hybrid-kv-cache-manager --disable-uvicorn-access-log

All other parameters (KV cache fp8, block size 256, max-model-len 1M, max-num-seqs 128, ISL/OSL matrix, concurrency rules) are identical to the non-DSpark H20 vLLM matrix experiment.

Requirements

The serving environment must include a vLLM build with dspark speculative decoding support (the stock vllm/vllm-openai:latest image may not). Either:

  • point DOCKER_IMAGE to an image with dspark support, or
  • set USE_DOCKER=0 and VENV_VLLM to a native env with dspark support.

Quick Start

# Dry run: print server args and scenario plan only
DRY_RUN=1 bash experiments/h20/dsv4_dspark_h20_vllm_tp_dp_matrix/run_bench.sh

# Full TP×DP matrix run
bash experiments/h20/dsv4_dspark_h20_vllm_tp_dp_matrix/run_bench.sh

# Adaptive concurrency search (+16 per step, aligned with
# dsv4_h20_vllm_tp_dp_matrix/run_adaptive_concurrency_add16.sh)
bash experiments/h20/dsv4_dspark_h20_vllm_tp_dp_matrix/run_adaptive_concurrency_add16.sh

Results land in experiments/h20/dsv4_dspark_h20_vllm_tp_dp_matrix/results/<RUN_ID>/.

Configuration

Edit config.env or override via environment variables:

MODEL_PATH=/data1/hf_models/DeepSeek-V4-Flash-DSpark \
VLLM_PORT=30032 \
SPEC_TOKENS=5 \
bash experiments/h20/dsv4_dspark_h20_vllm_tp_dp_matrix/run_bench.sh

Cold-start note: the DSpark draft model compiles ~140 TileLang kernels plus CUDA graphs on first launch, which exceeds vLLM's default 600s engine-ready timeout. config.env therefore sets VLLM_ENGINE_READY_TIMEOUT_S=3600 and HEALTH_CHECK_RETRIES=720 (60min), and start_vllm_docker.sh persists the TileLang/DeepGEMM JIT caches under runtime/cache/ so later TP×DP configs and reruns start much faster.

Files

Same layout as dsv4_h20_vllm_tp_dp_matrix; see that experiment for details.

Platform

This experiment targets platforms/nvidia_h20.env.