sskj/deploy/profiles/pro6000/glm53_nvfp4_pro6000_pd_prefill.env
yy-fighting 5c749cda03 feat(pro6000/GLM-5.3): 方案 D/E/F 部署资产入库(TP2PP4 生产配方 / TP8+DFlash2 / PD 分离四角色链)
- scripts: 11 个服务器原样脚本入库(md5 对照表更新至 README);D=60.1 生产原样配方、
  E=v5 DFlash 底稿、F=PD 链四角色部署+launch+双场景压测驱动
- profiles: 新增 6 个 .env(D/E 单机 + F 四角色,均带镜像 digest
  sha256:28e0d260…,对齐 kimi3 PD 多角色先例)
- deploy/PD_CHAIN.md: 方案 F 编排手册(启动顺序 mc-master→prefill→decode→router、
  基础设施依赖表、质量门口径、拆链恢复、÷2 单机等效判决)
- platforms/patches/pro6000/glm53_pd_chain/: sglang 补丁树 vs 镜像原版 11 文件
  unified diff 快照——宿主树无 .git,此为唯一版本记录(DFlash+PP+PD 解锁全集)
- deploy/manifests/: GLM-5.3-NVFP4(47分片)/GLM-5.3-DFlash2(单分片) 权重 md5 清单
- deploy/CURRENT.md: 全集群现役状态页(2026-09-08 八机实测)
- deploy/verify_profile.sh: 防漂移核验工具(digest+参数 token 比对+端口/health,
  已在 60.1 生产容器实测 PASS)
2026-09-08 16:36:15 +08:00

60 lines
4.0 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# GLM-5.3-NVFP4 PD 分离链 - 角色2: prefill 节点方案F跑在 6000D-1 = 174.1.60.18 卡)。
# 四角色链之一,启动顺序强制: mc-master -> [本角色] -> decode -> router。
# 完整链编排见 deploy/PD_CHAIN.md。
# 可执行部署脚本: experiments/pro6000/glm53_nvfp4_pro6000d_sglang_dual_scenario_bench/scripts/deploy_pd_probe.sh
# (参数 = launch 脚本名launch 脚本同目录 p1b_prefill_tp4pp2_cps8k_launch.sh 及其 radix 变体)
#
# 关键点(实测踩坑,勿随意改):
# - 拓扑 TP4 PP24卡/stage × 2 stage+ DFLASH 草稿(草稿只跑 prefill 侧草稿 KV
# export SGLANG_DFLASH_PD_DRAFT_KV_TRANSFER=0 = 草稿 KV 不跨机传输)
# - mem 0.78 低于单机方案PD 模式下 mooncake 传输缓冲占显存cps 8192非 D 方案的 16384
# - 基线 launch 脚本带 --disable-radix-cache场景一90% 命中)实测用 radix 变体
# p1b_prefill_tp4pp2_cps8k_radix_launch.sh唯一差异 = 删掉该 flag
# - 必须挂补丁树 /data/sglang_patch_glm53:/sgl-workspace/sglang含 1 个文件改动:
# python/sglang/srt/speculative/spec_info.py 接 build_dflash_family_disagg_draft_input
# DFlash PD 冷启动接线;无此补丁 decode 首请求 400
# - 必须装 mooncake wheel /data/flashkda_deploy/wheels/mooncake_transfer_engine_cuda13-
# 0.3.12.post1-cp312-cp312-manylinux_2_28_x86_64.whl--no-deps容器内 launch 脚本自装)
# - --network host + --device /dev/infiniband + --ulimit memlock=-1IB 设备 mlx5_0-3
# - 前置硬检查: mc-master 50051 必须已监听deploy_pd_probe.sh 自带)
# - 60.1 是生产机(日常跑 glm53-pp4拉本角色前须停生产容器测完等显存 <2000MiB
# 再跑 deploy_glm53_pp4.sh 恢复
#
# 实测成绩: 飞书《GLM-5.3-NVFP4 双场景压测报告》方案 F 行(文档 SZUSdEqY1oRVxGxgILBcHqPJnEc
# 128k cc1 TTFT 3.91s = 六方案最低;跨机 prefill/decode 重叠使 RDMA 传输被完全吸收。
PLATFORM=pro6000
EXPERIMENT=glm53_nvfp4_pro6000_pd_prefill
MODEL_NAME=GLM-5.3-NVFP4
ENGINE=sglang
RUNTIME=docker
ROLE=pd-prefill
NODE=174.1.60.1
DOCKER_IMAGE=lmsysorg/sglang:nightly-dev-20260828-daf63171
DOCKER_IMAGE_DIGEST=sha256:28e0d26073161e49ca56eba808d264a4223804a212020f1dfe1b2405b9f8a399
CONTAINER_NAME=glm53-pd-smoke-prefill
MODEL_PATH=/data/hf_models/GLM-5.3-NVFP4
DRAFT_MODEL_PATH=/data/hf_models/GLM-5.3-DFlash2
PORT=30000
HEALTH_PATH=/health
HEALTH_WAIT_S=1500
TP=4
PP=2
MEM_FRACTION_STATIC=0.78
MAX_RUNNING_REQUESTS=48
CHUNKED_PREFILL_SIZE=8192
DEVICE_VARS="CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7"
ENGINE_ENV="MOONCAKE_MASTER=174.1.60.1:50051 MOONCAKE_PROTOCOL=rdma SGLANG_DFLASH_PD_DRAFT_KV_TRANSFER=0 PYTHONUNBUFFERED=1"
DOCKER_FLAGS="--gpus all --network host --ipc=host --shm-size 64g --ulimit memlock=-1 --device /dev/infiniband --restart unless-stopped"
VOLUMES="/data/hf_models:/data/hf_models /data/flashkda_deploy/wheels:/mc_wheels:ro /data/sglang_patch_glm53:/sgl-workspace/sglang"
BOOTSTRAP="pip install /mc_wheels/mooncake_transfer_engine_cuda13-0.3.12.post1-cp312-cp312-manylinux_2_28_x86_64.whl --no-deps -q && python3 -m sglang.launch_server ${LAUNCH_ARGS}"
LAUNCH_ARGS="--model-path ${MODEL_PATH} --tp-size ${TP} --pp-size ${PP} --mem-fraction-static ${MEM_FRACTION_STATIC} --max-running-requests ${MAX_RUNNING_REQUESTS} --disable-shared-experts-fusion --moe-runner-backend flashinfer_cutlass --disable-flashinfer-autotune --disable-custom-all-reduce --chunked-prefill-size ${CHUNKED_PREFILL_SIZE} --speculative-algorithm DFLASH --speculative-draft-model-path ${DRAFT_MODEL_PATH} --speculative-draft-attention-backend fa4 --disaggregation-mode prefill --disaggregation-transfer-backend mooncake --disaggregation-bootstrap-port 28800 --disaggregation-ib-device mlx5_0,mlx5_1,mlx5_2,mlx5_3 --host 0.0.0.0 --port ${PORT} --json-model-override-args {\"index_topk_freq\": 4}"
# 场景一90% 命中)变体: LAUNCH_ARGS 追加 --disable-radix-cache 删除radix 开)。
# 基线(本 profile 口径)= radix off。