112 Commits

Author SHA1 Message Date
Quantong Qiu
db16057962 [Feat] apply validated deployment capacity caps 2026-07-21 11:50:23 +08:00
iiGray
2f15d09877 update 2026-07-20 15:21:35 +00:00
iiGray
3f50608aa7 update VLLM + GLM + H20 2026-07-20 15:13:09 +00:00
iiGray
866af70760 add VLLM + H20 + GLM 2026-07-20 14:16:44 +00:00
Quantong Qiu
105267b1b8 fix(h20): capture decode graphs through batch 128 2026-07-20 17:56:58 +08:00
Quantong Qiu
359df6a7b6 refactor(paths): derive repository files from root 2026-07-20 17:33:51 +08:00
Quantong Qiu
f0c93a7d72 !3 feat: add P800 vs H20 diagnosis plan for performance gap analysis
Merge pull request !3 from Zhiyi Hong/auto/main/11665927/d2449eb9-1
2026-07-20 08:11:18 +00:00
Quantong Qiu
8562c26524 fix(sglang): cap SM120 CUDA graph prefill 2026-07-20 16:06:09 +08:00
yy-fighting
0afd552ad3 feat: add P800 vs H20 diagnosis plan for performance gap analysis 2026-07-20 05:30:29 +00:00
yy-fighting
a7e2037471 feat(p800): add sglang profiling experiment with PROFILE_REPORT
- New experiment: dsv4_p800_sglang_profile for PyTorch profiler testing
- Documents XPU cuptiActivityDisable bug (error 17) when saving traces
- Includes benchmark results (ISL=4k, OSL=1k, C=16, TP8/DP1)
- PROFILE_REPORT.md with full analysis of P800 vs H20 performance gap
- Add dsv4_p800_sglang_tp_dp_official experiment config
2026-07-20 05:30:29 +00:00
Quantong Qiu
5ffbd0a21a fix(bench): use default limits and back off after OOM 2026-07-20 11:48:10 +08:00
SSKJ Dev
ceb1170969 Add adaptive results and configuration files for sglang experiment
- Created adaptive_summary.md to summarize adaptive concurrency search results, including metrics such as TP, DP, and TPS.
- Added run_manifest.json to document experiment configuration details, including hardware specifications and search parameters.
- Introduced shapes.tsv to define input and output lengths for various configurations in the adaptive experiment.
2026-07-19 04:03:47 +00:00
Quantong Qiu
958c5778f0 Add new kernels and autotune configurations for DeepseekV4 model
- Introduced a new CUDA kernel for transposing and packing FP32 into UE8.
- Added binary file for the new kernel.
- Created multiple autotune configuration files for version 0.6.14 of FlashInfer, supporting various input shapes and configurations.
- Added model information JSON for DeepseekV4ForCausalLM, detailing its architecture and capabilities.
2026-07-18 10:31:24 +08:00
Quantong Qiu
8beed2411f update 8k and 32k 2026-07-17 16:47:25 +08:00
yy-fighting
b3ead2cb77 untrack tp*_dp* outputs again; fix gitignore pattern (add platform/experiment level) 2026-07-17 07:13:48 +00:00
yy-fighting
3b1539d446 fix over-corrected scripts/common paths (4 levels -> 3) in 12 scripts 2026-07-17 07:09:40 +00:00
yy-fighting
b01640aa20 commit only aggregated adaptive results; untrack tp*_dp* raw outputs and metrics
- keep adaptive_points/shapes/summary jsonl+md, run_manifest.json, shapes.tsv
- untrack tp*_dp*/ subdirs (raw_outputs, metrics, logs, gpu_logs) and ignore them in .gitignore
- update NEW_PLATFORM_GUIDE commit convention accordingly
2026-07-17 06:28:55 +00:00
yy-fighting
8652a685e6 rewrite README, add new platform onboarding guide, fix broken scripts/common paths
- rewrite README with project purpose, standard workflow, corrected index
- add docs/NEW_PLATFORM_GUIDE.md (new GPU onboarding SOP, GLM5.2 reuse)
- fix ../../scripts/common -> ../../../scripts/common in 42 experiment scripts
- refresh stale docs (EXPERIMENT_GUIDE, H200_QUICKSTART, ADAPTIVE_CONCURRENCY_USAGE, BENCHMARK_WORKFLOW)
- remove dead code (dp_proxy.py) and .bak leftovers
- add p800 adaptive results (tp4_dp2/tp8_dp1 metrics + summary)
- gitignore envs/charts and .tmp_charts
2026-07-17 06:18:05 +00:00
SSKJ Dev
90f0257ae0 update result 2026-07-17 02:19:22 +00:00
SSKJ Dev
ff218bdeb3 enable TTFT group skip for all add16 benchmarks 2026-07-17 02:04:05 +00:00
SSKJ Dev
0591c401ab update stop method 2026-07-16 13:02:29 +00:00
SSKJ Dev
589d3b079d enable initial backoff for all add16 benchmarks 2026-07-16 09:05:37 +00:00
SSKJ Dev
c2a3024a1b update SEARCH_INITIAL_BACKOFF_CONCURRENCIES 2026-07-16 08:58:31 +00:00
yy-fighting
58ed6ea633 fix P800 bench_serving P95 2026-07-16 07:49:32 +00:00
yy-fighting
136fc80a38 Merge branch 'main' of https://gitee.com/yy-fighting/sskj 2026-07-16 06:49:52 +00:00
yy-fighting
0fdd3749c7 Add P800 sglang TP/DP matrix experiment
- New experiments/p800/dsv4_p800_sglang_tp_dp_matrix: TP8/DP1, TP4/DP2,
  TP2/DP4 matrix with smoke results; TP2/DP4 documents the weight-loading
  OOM root cause (274 GiB INT8 weights sharded only across TP group).
- Launch args drop --ep-size/--chunked-prefill-size/--max-prefill-tokens/
  --max-running-requests; experts fall back to TP sharding.
- Move dsv4_p800_256k_4k_probe under experiments/p800/.
- scripts/common: jq-free parsing fixes in adaptive_bench_lib.sh and
  parse_backend.py.
- .gitignore: cover raw_outputs under nested platform experiment layout.
2026-07-16 06:49:21 +00:00
SSKJ Dev
20cb4e35c2 update 2026-07-16 06:25:00 +00:00
yy-fighting
8f89cf6dc2 Merge branch 'main' of https://gitee.com/yy-fighting/sskj 2026-07-16 05:18:58 +00:00
SSKJ Dev
dcb8cd2131 feat(adaptive): add TTFT SLO early-stop and fix relative paths for h20 experiments
- Add TTFT_SLO_MS and ENABLE_TTFT_SLO_STOP config to adaptive search
- Stop searching current shape when TTFT P95 exceeds SLO (default 3000ms)
- Fix relative paths in h20 scripts: ../../scripts/common -> ../../../scripts/common
- Update compare.py default TTFT limit to 4000ms
2026-07-16 05:15:51 +00:00
yy-fighting
18ded8e15d Merge branch 'main' of https://gitee.com/yy-fighting/sskj
# Conflicts:
#	experiments/dsv4_p800_long_context_matrix/README.md
#	experiments/dsv4_p800_long_context_matrix/config.env
#	experiments/dsv4_p800_long_context_matrix/run_bench.sh
2026-07-16 05:13:38 +00:00
SSKJ Dev
a4e38b9e33 Reorganize experiments into hardware-specific subdirectories
Move all experiments under hardware-specific folders:
- experiments/h200/     : H200 GPU experiments (15 dirs)
- experiments/h20/      : H20 GPU experiments (2 dirs)
- experiments/p800/     : Kunlun P800 experiments (3 dirs)
- experiments/pro6000/    : RTX 6000D experiments (2 dirs)

This improves discoverability and keeps hardware-specific configs
isolated from each other.
2026-07-16 04:11:07 +00:00
SSKJ Dev
90fc378d2b Add H20 TP×DP matrix experiments for vLLM and SGLang
- Add dsv4_h20_vllm_tp_dp_matrix experiment (vLLM backend)
- Add dsv4_h20_sglang_tp_dp_matrix experiment (SGLang backend)
- Add nvidia_h20 platform config with H20-specific paths
- Fix platform.sh auto-detection to distinguish H20 from H200
- Fix vLLM Docker startup: remove --entrypoint override for CDI compat
- Fix vLLM 0.25.1 CLI args: remove redundant 'serve' from SERVER_ARGS
- Download ShareGPT dataset to local datasets dir
- Rename DSL to OSL across both experiments
2026-07-16 03:43:58 +00:00
Quantong Qiu
5405d002fc chore: remove legacy benchmark files and scripts
Delete obsolete files that are no longer maintained:
- experiments/legacy_bench_results/ (old benchmark reports and summaries)
- scripts/benchmark_dspark_0707/ (outdated dspark benchmark scripts)
- scripts/start_dsv4_dspark_8card.sh (deprecated deployment script)
2026-07-14 10:47:09 +00:00
Quantong Qiu
e0ae0715b1 feat(adaptive): add RESUME_RUN_ID resume support and rename DSL to OSL
- Add RESUME_RUN_ID env var for breakpoint resume in adaptive benchmarks.
  When set, the script reuses an existing result directory and skips
  already-tested (TP, DP, ISL, OSL) shapes based on adaptive_shapes.jsonl.
- Fix RUN_ID unbound variable in resume mode.
- Fix jq query to use -s (slurp) for jsonl files.
- Add resume skip logic to DRY_RUN mode as well.
- Rename DSL -> OSL across all adaptive benchmark files for consistency:
  - scripts/common/adaptive_bench_lib.sh
  - scripts/common/adaptive_concurrency.py
  - experiments/dsv4_h200_vllm_tp_dp_matrix/adaptive_config.env
  - experiments/dsv4_h200_vllm_tp_dp_matrix/run_adaptive_concurrency.sh
  - experiments/dsv4_h200_sglang_tp_dp_matrix/adaptive_config.env
  - experiments/dsv4_h200_sglang_tp_dp_matrix/run_adaptive_concurrency.sh
  - experiments/ADAPTIVE_CONCURRENCY_USAGE.md
2026-07-14 10:41:50 +00:00
iiGray
60826dda09 add run_adaptive_concurrency_add16 2026-07-13 17:26:33 +08:00
Root
a7f453b997 feat: add run_bench.sh and fix config for dsv4_pro6000_sglang_tp_dp_matrix
- Migrate run_bench.sh from dsv4_h200_sglang_tp_dp_matrix
- Add missing generate_scenarios.py, compare.py, matrix.json
- Fix MODEL_PATH to /root/data/models/ds_flash_v4
- Fix DATASET_PATH to local dummy_sharegpt.json
- Tune CONTEXT_LENGTH, MAX_RUNNING_REQUESTS, MEM_FRACTION_STATIC for RTX 6000D 83GB
- Exclude GPU 2 due to DRAM Uncorrectable ECC hardware error
2026-07-13 05:22:31 +00:00
Quantong Qiu
d904d663a4 Add dsv4_pro6000_vllm_tp_dp_matrix experiment for RTX 6000D
- vLLM adaptive concurrency benchmark adapted from H200 version
- Key changes:
  - Model path: /data/hf_models/DeepSeek-V4-Flash
  - Venv path: /root/.miniconda3/envs/sglang
  - Dataset path: /data/yy/sskj/datasets/
  - DSL renamed to OSL (Output Sequence Length)
- Includes: config.env, adaptive_config.env, run_adaptive_concurrency.sh,
  start_vllm_dp.sh, start_vllm_docker.sh
2026-07-13 02:59:33 +00:00
Quantong Qiu
372ff08eea Add master orchestrator script for sequential benchmark execution
- Implemented a bash script to run six benchmark experiments sequentially.
- Added features for fault tolerance, out-of-memory recovery, and checkpoint management.
- Included detailed logging for monitoring experiment progress and results.
- Integrated GPU memory cleanup checks before each experiment.
- Provided functionality to resume experiments from checkpoints.
2026-07-13 02:46:15 +00:00
Quantong Qiu
302d1a9822 Rename DSL to OSL (Output Sequence Length) in dsv4_pro6000 experiment
DSL -> OSL to better reflect the meaning: Output Sequence Length.
2026-07-13 02:28:11 +00:00
Quantong Qiu
8ebe963269 Add dsv4_pro6000_sglang_tp_dp_matrix experiment for RTX 6000D
- New experiment directory with adaptive concurrency benchmark for SGLang
- Platform config for 8x NVIDIA RTX 6000D 84GB
- Adapted from dsv4_h200_sglang_tp_dp_matrix with updated paths:
  - Model path: /data/hf_models/DeepSeek-V4-Flash
  - Venv path: /root/.miniconda3/envs/sglang
  - Dataset path: /data/yy/sskj/datasets/
2026-07-13 02:18:34 +00:00
Root User
5e95cee1a0 bench: add adaptive concurrency search 2026-07-11 06:11:40 +00:00
Root User
d783143ddb vllm tp_dp_matrix: dockerize deployment and fix missing DOCKER_CLIENT_IMAGE export
- Run vLLM server inside vllm/vllm-openai:latest container on H200.
- Run benchmark client inside lmsysorg/sglang:latest using
  sglang.bench_serving --backend vllm, matching the sglang reference.
- Use RUNTIME_BASE for self-contained logs/pids/tmp instead of hardcoded
  /data/user1/yy paths.
- Update model path to /data3/hf_models/DeepSeek-V4-Flash.
- Sample only low/high concurrency endpoints to match sglang matrix.
- Fix docker 'invalid reference format' caused by DOCKER_CLIENT_IMAGE not
  being exported to bash -c subshells used by run_bench_serving.
- Add offline dummy ShareGPT dataset for random benchmark mode.
2026-07-11 06:11:40 +00:00
Quantong Qiu
4d5b6a77ca Add custom benchmark setup for vLLM TP=8 on dsv4 H200
- Create configuration file for the custom benchmark experiment.
- Implement result parsing script to handle JSONL outputs from the benchmark.
- Develop run script to orchestrate the benchmark execution, including server management and health checks.
- Add server start script to launch a single vLLM service on all available GPUs.
2026-07-10 09:40:10 +00:00
yy-fighting
a388358b37 fix(sglang-tp-dp-matrix): export DOCKER_IMAGE/USE_DOCKER_CLIENT and add persistent container support
- Fix docker invalid reference format by exporting DOCKER_IMAGE and
  USE_DOCKER_CLIENT to bash subshells (run_bench_serving)
- Add persistent container mode: start_sglang_container.sh +
  run_sglang_in_container.sh for faster config switching
- Add README.md with setup and migration guide
2026-07-10 09:15:04 +00:00
Quantong Qiu
db00c1b1ac Add custom benchmark setup for vLLM TP=2 on dsv4_h200
- Create configuration file for dsv4_h200_vllm_tp2_custom_bench.
- Implement result parsing script to handle JSONL outputs from bench_client.py.
- Develop run_bench.sh script to orchestrate multi-service vLLM benchmarking.
- Add start_server.sh script to launch independent vLLM services on specified GPU pairs.
2026-07-10 09:06:10 +00:00
yy-fighting
e62ab7c970 sglang tp_dp_matrix: export MODEL_PATH and RESULT_BASE for bash -c subshells
export -f only exports the function definition, not the variables it
references. MODEL_PATH and RESULT_BASE were empty inside timeout bash -c
subshells, causing docker run -v ::ro invalid spec. Add explicit export
for all variables used by run_bench_serving().
2026-07-10 04:57:22 +00:00
yy-fighting
58a3616872 sglang tp_dp_matrix: export DATASET_PATH for bash -c subshells
export -f only exports the function definition, not the variables it
references. DATASET_PATH was empty inside timeout bash -c subshells,
causing docker run -v ::ro invalid spec even after the dynamic vol_args
fix. Add explicit export after sourcing config.env.
2026-07-10 04:07:14 +00:00
yy-fighting
605b976fb8 sglang tp_dp_matrix: fix empty DATASET_PATH causing docker invalid spec
When DATASET_PATH is empty, -v ::ro is passed to docker run, which
produces 'invalid spec: ::ro: empty section between colons'. Build
the volume args dynamically and only add the dataset mount when the
path is non-empty.
2026-07-10 03:13:11 +00:00
yy-fighting
4ea6e92b42 sglang tp_dp_matrix: fix timeout calling bash function (rc=127)
timeout(1) cannot execute shell functions directly; it needs a standalone
command. Export run_bench_serving via export -f and wrap both warmup and
scenario runs in bash -c so the function is visible in the subshell.
2026-07-10 02:51:29 +00:00
yy-fighting
666c583844 vllm tp_dp_matrix: add final results (report, results.json, comparison, scenarios)
Source code was already committed; this adds only the structured final
artifacts from run 20260709-152419_matrix. Raw jsonl/logs/gpu_logs remain
ignored per .gitignore.
2026-07-10 02:20:36 +00:00