DeepSeek-V4-Pro / Pro6000D / Two-Node / SGLang Hardware Attribution
Phase 2 replays a small set of Phase 1 workloads while collecting aligned GPU, CPU, NUMA, SGLang, Ethernet and RDMA evidence on both nodes.
Run
The user runs only this entry on 174.1.51.5:
cd /data/hzy/sskj/experiments/pro6000/dsv4pro_pro6000d_2node_sglang_hardware_contention_attribution
RUN_ID="dsv4pro-phase2-$(date +%Y%m%d-%H%M%S)"
tmux new-session -d -s dsv4pro-phase2 \
"RUN_ID=${RUN_ID} bash run_hardware_contention_attribution.sh all \
2>&1 | tee /data/hzy/${RUN_ID}.log"
all internally calls the Phase 1 entry to start and stop the two-node TP16
service. Do not manually run Phase 1 start or stop in parallel.
Before using GPUs:
bash -n run_hardware_contention_attribution.sh
python3 -m unittest discover -s tests -v
DRY_RUN=1 RUN_ID=dsv4pro-phase2-dryrun \
bash run_hardware_contention_attribution.sh all
Scope
The default run covers:
| Workload | Purpose |
|---|---|
128K -> 1, C=1 |
Long Prefill latency |
32K -> 1, C=16 |
Concurrent Prefill throughput |
1K -> 1K, C=32 |
Ordinary Decode |
1K -> 4K, C=16 |
Sustained Decode and KV growth |
128K -> 1K, C=1 |
Long-context Decode |
1K -> 1K, C=32 plus 128K -> 1 |
Prefill/Decode contention |
The service and benchmark implementation remains owned by Phase 1. Phase 2 adds only the monitoring window, case markers and hardware summaries.
Files
| File | Purpose |
|---|---|
run_hardware_contention_attribution.sh |
Only shell entry; service, collectors, cases, cleanup |
config.env |
Phase 1 path, node addresses, cases and sampling policy |
hardware_contention_attribution.py |
Markers, manifest, validation and summaries |
tests/test_hardware_contention_attribution.py |
Parser and unit-conversion tests |
Output
results/<RUN_ID>/
manifest.json
run.log
markers.csv
bench/<case-or-suite>/
service/
head_server_cmd.txt
worker_server_cmd.txt
head_server.log
worker_server.log
head/
gpu_samples.csv
dcgm_dmon.log
mpstat.log
pidstat.log
sar_net.log
perf_stat.log
docker_top.log
rdma.csv
static_before.log
static_after.log
collector_commands/
worker/
...
bench_summary.csv
gpu_summary.csv
rdma_summary.csv
case_windows.csv
case_gpu_summary.csv
case_rdma_summary.csv
summary.json
report.md
Raw collectors are diagnostic evidence. Final performance comparisons must still use a no-profiler benchmark such as Phase 1.