test_gpu_scripts/H100_test_all_vs_PDF_覆盖对比.md

6.6 KiB
Raw Blame History

H100 PDF 验收项 vs 当前 test all 覆盖对比

对比对象:

  • PDF/Users/d-robotics/Downloads/H100_production_acceptance.pdf
  • 当前脚本:python gpu_tester.py --config configs/default.yaml --test all --report --format md
  • 范围:单节点 8 卡 H100。跨节点 NCCL/RDMA 暂不纳入本轮。

结论

当前 test all 已经从“功能巡检”扩成了“接近生产验收”的单节点套件GPU 健康、NVLink/NVSwitch、HBM/PCIe/NVLink 带宽、计算、NCCL、压力、RDMA 本机端口、DCGM、训练模拟都会进入同一个 all。

最新 stress smoke 已确认 PyTorch BF16 GEMM 压力能把两台机器压到 PDF 要求的功耗区间:

  • aikubeworker001245 秒 smoke稳态平均功耗约 697-698W/卡TFLOPS jitter 4.07%XID 0,但温差 12Cclocks_throttle_reasons.active=0x4,按 PDF 严格 FAIL。
  • aikubeworker001645 秒 smoke稳态平均功耗约 697-699W/卡TFLOPS jitter 3.77%XID 0,但温差 8Cclocks_throttle_reasons.active=0x4,按 PDF 严格 FAIL。

也就是说,当前卡点已经不是“脚本压不满 H100”而是机器在满功耗压力下没有满足 PDF 的 温差 <=5CThrottle Reasons 全程 0x0 两个严格门槛。

但如果严格按 PDF 做最终验收,现在还差这些:

  1. 24 小时类指标未覆盖PDF 要求 SBE 24h 增长率、长稳态观察;当前 all 是单次快照 + 30 分钟压力,不等于 24 小时老化。
  2. 跨节点项目本轮故意不测PDF 的 IB/RDMA 生产验收通常要双端 ib_write_bw/read_bw/latibping;当前按你的要求先做单节点,跨节点未纳入。
  3. PFC/ECN/AER 的覆盖依赖机器暴露的系统计数器:脚本会读能找到的 sysfs 计数器和 dmesg但如果交换机侧 PFC/ECN 不在主机暴露,仍需要网络侧补证据。
  4. NCCL 1MB 档会被严格阈值打失败:实测 1MB AllReduce bus BW 约 23 GB/s而 256MB AllReduce 已通过 nccl-tests 验证,约 421 GB/s如果 PDF 要求 1MB 也达到 405 GB/s这项不是“没测”而是会被判 FAIL。
  5. Stress 已能达到功耗和 jitter 要求,但短测已经暴露温差和 throttle strict FAIL完整 1800 秒只会给出更正式的证据,不会自动改变这个判据。

覆盖表

PDF 验收项 当前 test all 状态 还少什么
GPU 基本信息、Driver/CUDA 已覆盖 无;会记录 driver、CUDA、GPU 型号
温度阈值:稳态 ≤75C、峰值 ≤85C 已覆盖健康快照;压力项覆盖 ≤80C 24h 稳态曲线不在一次 all 内
idle power ≤100W/card 部分覆盖 当前 health 会采功耗,但 idle 判据还不是独立验收项
stress power ≥630W/card 已覆盖;短测两台约 697-699W/卡 完整 1800 秒仍待跑
throttle reasons active=0x0 已覆盖;短测两台出现 0x4 按 PDF 严格判 FAIL不是脚本跳过项
DBE/SBE/retired pages 部分覆盖 retired pages 和内核错误已查SBE 24h 增长率未覆盖
PCIe Gen5 x16 部分覆盖 GPU 信息/拓扑可见Replay/AER 依赖 dmesg/sysfs可能还需额外主板侧证据
Fabric Manager active 且无 ERROR 已覆盖 health 会查 systemd 和 journal
NVLink18 links/GPU、25GB/s/link、错误为 0 已覆盖 无;新增 nvlink
D2D/H2D/D2H 带宽 已覆盖 依赖 nvbandwidth,两台已具备
8x8 P2P matrix off-diagonal mean/min/deviation 已覆盖 无;由 nvbandwidth JSON 解析
Compute FP32/TF32/FP16/BF16/FP8/FP64/INT8 已覆盖 INT8 为 PyTorch _int_mm 路径,若要供应商标准 INT8 kernel 需再换实现
NCCL AllReduce/AllGather/ReduceScatter/Broadcast/SendRecv/AllToAll 已覆盖 无;nccl-tests 已在两台编好
NCCL 1MB/256MB/2GBrepeat 3stddev ≤3% 已覆盖 严格按 PDF 阈值时 1MB 档大概率 FAIL256MB AllReduce 两台 nccl-tests 实测约 421GB/s
Stress ≥30minBF16/FP16 GEMM 81921s telemetry 已覆盖;默认 BF16 GEMM 245761s telemetrywarmup 后稳态判定 完整 1800 秒待执行;短测已暴露温差/throttle FAIL
DCGM dcgmi diag -r 3 已覆盖DCGM 4.5.3 已安装,服务已启用 两台完整 -r 3 已 PASS日志见 /root/test_gpu_scripts/reports/dcgm_r3_*_20260522_17010*.log
RDMA 端口 ACTIVE、400Gbps 部分覆盖 单节点可查端口;严格双端吞吐/时延本轮不跑
RDMA write/read bw ≥47GB/s、latency ≤2/3.5us 部分覆盖 单机 localhost/perftest 不等价跨节点线速验收
PFC/ECN errors=0、ibping 双向 OK 部分覆盖 主机能读到的计数器会查;交换机侧/跨节点 ibping 未覆盖
1.5B synthetic Transformer BF168 卡≥45k tokens/s 已覆盖 DDP 路径 8 进程 DDP smoke 已通过;完整 50 step 长跑待执行
任一子项 FAIL 则总体验收 FAIL 已覆盖 all 现在会按 strict verdict 退出非 0

如果现在直接跑 all

推荐命令:

cd /root/test_gpu_scripts
/root/gpu-test-venv/bin/python gpu_tester.py --config configs/default.yaml --test all --report --format json --output reports/h100_all_$(hostname)_$(date +%Y%m%d_%H%M%S).json

如果要直接生成中文 Markdown 报告,用这个:

cd /root/test_gpu_scripts
/root/gpu-test-venv/bin/python gpu_tester.py --config configs/default.yaml --test all --report --format md --output reports/h100_all_$(hostname)_$(date +%Y%m%d_%H%M%S).md

预计行为:

  • 会跑完整单节点项目,压力默认 1800 秒,默认使用 PyTorch BF16 GEMM 压力并采 1 秒 telemetry/XID。
  • stress 默认矩阵为 24576,用于把 H100 压到 ≥630W/卡PDF 只要求 matrix_size >=8192,这里是为了满足功耗门槛。
  • NCCL 会跑 6 个 op × 3 个 message size × 3 次 repeat。
  • DCGM 会跑 dcgmi diag -r 3 -n gpu:8 -jDCGM 工具链已安装并启动,diag -r 1 与两台独立 r3 长跑均已 PASS。
  • NCCL 1MB 档按 405GB/s 阈值也会失败256MB AllReduce 已验证走 nccl-tests,两台约 421GB/s。
  • stress 按 PDF 严格口径预计会 FAIL当前短测证据显示温差超过 5C且 throttle active 出现 0x4
  • 跨节点 RDMA/NCCL 不在这次单节点 all 里。

当前最小补齐清单

  1. 如果要严格 RDMA 生产验收,下一轮用两台机器做 server/client 双端测试。
  2. 执行完整 1.5B DDP 50 step 训练验收并归档 tokens/s、jitter、显存和 loss。
  3. 执行完整 1800 秒 stress 并归档 1 秒 telemetry、XID、throttle、功耗和温度当前预期会因温差/throttle FAIL。
  4. 如果要 24 小时验收,增加一个 24h monitor 模式,记录 SBE 增长率、XID、温度、功耗、降频曲线。