From 4bf9bdf28fc61f9bc588be9d6329b8e04e6d02bf Mon Sep 17 00:00:00 2001 From: Gahow Wang Date: Thu, 16 Jul 2026 21:52:43 +0800 Subject: [PATCH] Add full Qwen30 MoE profiling matrix --- .../jobs_allreduce_smoke_tp2.toml | 6 +-- .../jobs_moe_full.toml | 18 +++++++ .../run_moe_full.sh | 51 +++++++++++++++++++ 3 files changed, 72 insertions(+), 3 deletions(-) create mode 100644 runs/frontier-qwen30-vllm020-profile-v1/jobs_moe_full.toml create mode 100644 runs/frontier-qwen30-vllm020-profile-v1/run_moe_full.sh diff --git a/runs/frontier-qwen30-vllm020-profile-v1/jobs_allreduce_smoke_tp2.toml b/runs/frontier-qwen30-vllm020-profile-v1/jobs_allreduce_smoke_tp2.toml index 802066e..7a9d10f 100644 --- a/runs/frontier-qwen30-vllm020-profile-v1/jobs_allreduce_smoke_tp2.toml +++ b/runs/frontier-qwen30-vllm020-profile-v1/jobs_allreduce_smoke_tp2.toml @@ -1,12 +1,12 @@ version = 1 [[jobs]] -name = "qwen30-vllm020-flashinfer-allreduce-smoke-tp2-20260716-v1" +name = "qwen30-vllm020-flashinfer-allreduce-smoke-tp2-20260716-v2-config-context" gpus = 2 gpu_model = "H20" hosts = ["dash0"] command = "cd /home/admin/cpfs/wjh/aituner/aituner-qwen30-vllm020-profile-v1/runs/frontier-qwen30-vllm020-profile-v1 && timeout --signal=TERM --kill-after=30s 840 bash run_allreduce_profile.sh" -artifacts = ["artifacts/allreduce-smoke-tp2"] +artifacts = ["artifacts/allreduce-smoke-tp2-v2"] [jobs.env] HOME = "/tmp/wjh" @@ -14,6 +14,6 @@ XDG_CACHE_HOME = "/tmp/wjh/.cache" VLLM_CACHE_ROOT = "/tmp/wjh/.cache/vllm" TP = "2" NUM_TOKENS = "8" -OUTPUT_ROOT = "/home/admin/cpfs/wjh/aituner/aituner-qwen30-vllm020-profile-fleet/artifacts/allreduce-smoke-tp2" +OUTPUT_ROOT = "/home/admin/cpfs/wjh/aituner/aituner-qwen30-vllm020-profile-fleet/artifacts/allreduce-smoke-tp2-v2" VENV_ROOT = "/tmp/wjh/venvs/vllm-0.20.0-cu129-profiler-v1" VLLM_SOURCE = "/home/admin/cpfs/wjh/agentic-kv/third_party/vllm_v20_build" diff --git a/runs/frontier-qwen30-vllm020-profile-v1/jobs_moe_full.toml b/runs/frontier-qwen30-vllm020-profile-v1/jobs_moe_full.toml new file mode 100644 index 0000000..aaeae66 --- /dev/null +++ b/runs/frontier-qwen30-vllm020-profile-v1/jobs_moe_full.toml @@ -0,0 +1,18 @@ +version = 1 + +[[jobs]] +name = "qwen30-vllm020-moe-full-20260716-v1-local-shard" +gpus = 1 +gpu_model = "H20" +hosts = ["dash0"] +command = "cd /home/admin/cpfs/wjh/aituner/aituner-qwen30-vllm020-profile-v1/runs/frontier-qwen30-vllm020-profile-v1 && timeout --signal=TERM --kill-after=30s 1620 bash run_moe_full.sh" +artifacts = ["artifacts/moe-full-v1"] + +[jobs.env] +HOME = "/tmp/wjh" +XDG_CACHE_HOME = "/tmp/wjh/.cache" +VLLM_CACHE_ROOT = "/tmp/wjh/.cache/vllm" +OUTPUT_ROOT = "/home/admin/cpfs/wjh/aituner/aituner-qwen30-vllm020-profile-fleet/artifacts/moe-full-v1" +VENV_ROOT = "/tmp/wjh/venvs/vllm-0.20.0-cu129-profiler-v1" +VLLM_SOURCE = "/home/admin/cpfs/wjh/agentic-kv/third_party/vllm_v20_build" +MODEL = "/home/admin/cpfs/wjh/models/Qwen/Qwen3-30B-A3B" diff --git a/runs/frontier-qwen30-vllm020-profile-v1/run_moe_full.sh b/runs/frontier-qwen30-vllm020-profile-v1/run_moe_full.sh new file mode 100644 index 0000000..374a78b --- /dev/null +++ b/runs/frontier-qwen30-vllm020-profile-v1/run_moe_full.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +set -euo pipefail + +OUTPUT_ROOT="${OUTPUT_ROOT:?OUTPUT_ROOT must be set}" +VENV_ROOT="${VENV_ROOT:-/tmp/wjh/venvs/vllm-0.20.0-cu129-profiler-v1}" +VLLM_SOURCE="${VLLM_SOURCE:-/home/admin/cpfs/wjh/agentic-kv/third_party/vllm_v20_build}" +MODEL="${MODEL:-/home/admin/cpfs/wjh/models/Qwen/Qwen3-30B-A3B}" +TOKENS=(1 8 16 32 64 128 256 512 1024 2048 4096 8192) +mkdir -p "${OUTPUT_ROOT}/logs" "${OUTPUT_ROOT}/provenance" "${OUTPUT_ROOT}/raw" +exec > >(tee -a "${OUTPUT_ROOT}/logs/full.log") 2>&1 + +IFS=',' read -r -a GPU_IDS <<< "${CUDA_VISIBLE_DEVICES:?fleet GPU is required}" +if [[ "${#GPU_IDS[@]}" -ne 1 ]]; then + echo "ERROR: expected exactly one GPU, got ${CUDA_VISIBLE_DEVICES}" >&2 + exit 1 +fi + +echo "PROFILE_LAUNCH_ECHO host=$(hostname) gpu=${CUDA_VISIBLE_DEVICES} model=${MODEL} runtime=vLLM-0.20.0+cu129 operator=FlashInfer-CUTLASS-unquantized-MoE tp_local_shapes=1,2,4 tokens=${TOKENS[*]} routing=uniform_random_logits,hotset8 reference_check=on dtype=BF16 output=${OUTPUT_ROOT} expected_wall=4-12m hard_wall=1500s hard_gpu_cap=0.42_H20h" +date -u +"START_UTC=%Y-%m-%dT%H:%M:%SZ" +nvidia-smi --query-gpu=index,name,driver_version,memory.used,utilization.gpu --format=csv,noheader + +test -x "${VENV_ROOT}/bin/python" +test -f "${MODEL}/config.json" +git rev-parse HEAD > "${OUTPUT_ROOT}/provenance/aituner.commit" +git -C "${VLLM_SOURCE}" rev-parse HEAD > "${OUTPUT_ROOT}/provenance/vllm-source.commit" +sha256sum profile_vllm020_moe.py run_moe_full.sh \ + > "${OUTPUT_ROOT}/provenance/source.sha256" +uv pip freeze --python "${VENV_ROOT}/bin/python" \ + > "${OUTPUT_ROOT}/provenance/pip-freeze.txt" +nvidia-smi --query-gpu=index,uuid,name,driver_version,memory.total \ + --format=csv,noheader > "${OUTPUT_ROOT}/provenance/gpus.csv" +printf '%s\n' "${TOKENS[@]}" > "${OUTPUT_ROOT}/provenance/tokens.txt" + +timeout --signal=TERM --kill-after=30s 1380 \ + "${VENV_ROOT}/bin/python" profile_vllm020_moe.py \ + --vllm-source "${VLLM_SOURCE}" \ + --model "${MODEL}" \ + --output "${OUTPUT_ROOT}/raw/moe-full.json" \ + --tp 1 2 4 \ + --num-tokens "${TOKENS[@]}" \ + --routing-modes uniform_random_logits hotset8 \ + --warmup-iters 5 \ + --repeats 10 \ + --check-reference + +test -s "${OUTPUT_ROOT}/raw/moe-full.json" +sha256sum "${OUTPUT_ROOT}/raw/moe-full.json" "${OUTPUT_ROOT}/provenance"/* \ + > "${OUTPUT_ROOT}/artifacts.sha256" +date -u +"END_UTC=%Y-%m-%dT%H:%M:%SZ" +echo "MOE_FULL_COMPLETE rows=72"