Skip to content

Add GLM-5.3-Flash FP8 and NVFP4 B300 SGLang AgentX / 添加 GLM-5.3-Flash FP8 与 NVFP4 B300 SGLang AgentX - #4710

Merged
Oseltamivir merged 16 commits into
mainfrom
feat/glm53flash-fp8-b300-sglang
Nov 6, 2026
Merged

Oseltamivir merged 16 commits into
mainfrom
feat/glm53flash-fp8-b300-sglang

Conversation

@functionstackx

@functionstackx functionstackx commented Nov 1, 2026 •

Copy link
Copy Markdown
Collaborator

Adds GLM-5.3-Flash AgentX on one 8x B300 node for both precisions, in one PR:

Config key Checkpoint No offload (GPU KV) HiCache (CPU DRAM)
glm5.3flash-fp8-b300-sglang-agentic-mtp zai-org/GLM-5.3-Flash c1, 4, 8, 16, 24, 32, 48 c64, 96
glm5.3flash-fp4-b300-sglang-agentic-mtp nvidia/GLM-5.3-Flash-NVFP4 c4, 8, 16, 24, 32, 48 c64, 96

It replaces the separate B300 PRs:

Both precisions serve the SGLang cookbook's B300 Low Latency cells (source) on the official lmsysorg/sglang:v0.5.22-cu130@sha256:e3a4f06001a29542fc4a8638536d9ffc5eb9c9942b08603c09b19a56eae4a1ae:

  • TP8 with TRT-LLM DSA prefill/decode, FP8 KV cache and FlashInfer TRT-LLM MoE.
  • EAGLE MTP 5/1/6 and the auto reasoning/tool-call parsers.
  • NVFP4 adds --quantization modelopt_fp4.

Everything else the earlier recipes tuned is now the engine default: memory fraction, chunked/max prefill, decode CUDA graph sizes and admission on the no-offload points. Acceptance comes from the glm-5.3-flash__mtp__native__default-default golden curve (MTP5 = 3.60).

Results: sweep 42024862281

The run measured head 88199b245. It completed green on attempt 1, with every point power_valid=1. The commit after it changes only the recorded DRAM metadata (see below).

Total tok/s per GPU / p90 E2EL. ★ = on the throughput vs p90 E2EL Pareto front.

Point FP8 NVFP4
c1 3,118 / 12.49 s not run
c4 4,531 / 9.35 s 4,562 / 8.35 s
c8 7,682 / 8.40 s ★ 7,816 / 7.60 s
c16 14,229 / 8.51 s ★ 14,377 / 7.35 s ★
c24 22,332 / 10.78 s ★ 22,939 / 9.40 s ★
c32 28,974 / 12.93 s ★ 30,064 / 10.79 s ★
c48 38,344 / 17.64 s ★ 40,471 / 14.56 s ★
HiCache c64 46,721 / 24.67 s ★ 49,293 / 21.37 s ★
HiCache c96 48,698 / 47.36 s ★ 55,196 / 35.99 s ★
  • Pareto coverage. infx.workflows.pareto_coverage on these points: FP8 has 7 frontier points of 9, NVFP4 has 6 of 8. Both PASS.
  • gsm8k (canonical, 1,319 examples, HiCache c96, no synthetic acceptance): FP8 97.35% strict / 97.27% flexible; NVFP4 97.27% / 97.27%.
  • Dropped records. About 4–5% of records at every point are dropped as InvalidInferenceResultError (streams without content), the same rate as in the source runs.
  • Implicit admission cap of 48. Server logs confirm it on the no-offload points: "Max running requests is reset to 48", max_running_requests: 48.
    • c48 queues in 11–13% of scheduler batches (max queue 60–63).
    • c32 queues in about 7–8% (max 39–41).
    • Throughput still matches the source runs, whose caps were 64 / 96 (FP8 c48: 38,344 vs 38,313).
  • HiCache points. They run with max_running_requests: 96. CPU-tier cache hits are 0.4–0.8% at c64 and 3.1–4.3% at c96.

Deviations from the cookbook (HiCache points only)

1. Auto-sized HiCache pools (fraction 0.76) instead of --hicache-size 32

  • The cookbook's tier is smaller than the device pool. Its 32 GB/rank host tier holds about 5.2M tokens. The device KV pool holds 22.4M tokens (FP8) / 24.3M tokens (NVFP4) per rank, so the cookbook tier is about 4x smaller.
  • SGLang v0.5.22 warns about this. It logs that a host pool smaller than the device pool reduces L2 effectiveness.
  • Measured pool sizes. The measured HiCache runs auto-sized at fraction 0.65 and allocated, per rank:
Run KV Mamba DSA indexer Total
FP8, run 41386432269 216.00 GB 69.58 GB 13.92 GB 299.5 GB
NVFP4, run 41352674113 217.17 GB 69.60 GB 14.00 GB 300.8 GB
  • The recipe sets --enable-hierarchical-cache --hicache-host-memory-fraction 0.76. Write policy, IO backend and layout stay at the defaults (write_through / kernel / page_first).

2. --max-running-requests 96 on the HiCache points

  • Why a cap is needed. With EAGLE and no cap, v0.5.22 resets max_running_requests to 48 ("Max running requests is reset to 48 for speculative decoding"). Without the cap, c64 and c96 would queue behind 48 running requests.
  • Why 96. These measurements on B300 FP8 HiCache pick 96:
Run Point Cap Result
41386432269 c96 96 healthy: 50.6k tok/s per GPU, p90 E2EL 43.7 s
41386432269 c80 160 collapsed: 35.6k tok/s per GPU, 68.1 s
41353165110 c96 192 ran out of memory
  • Scope. The no-offload points keep the engine default.

CPU DRAM accounting

The MODELS.md policy allows HGX B300 at most 3 TB per server with 8/8 GPUs.

How SGLang sizes the pools

  • Per-rank budget = (min(host, cgroup) − 10 GiB) / 8 × fraction. The cgroup measured 3833 GiB on both runs.
  • Pools are sized to about 0.95 of the budget. The ratio stays below the 2.0 default: about 1.83 for FP8 and 1.70 for NVFP4 at fraction 0.76.

Measured allocation
Total of the three "Allocating … host memory" lines (KV + Mamba + DSA indexer) across 8 ranks, from each HiCache server log:

Point FP8 NVFP4
Pre-run estimate (source allocation × 0.76/0.65) 2801 GB 2812 GB
HiCache c64 2802.2 GB 2813.6 GB
HiCache c96 2799.4 GB 2813.5 GB
Recorded total-cpu-dram-gb (dram-utilization) 2804 GB (0.935) 2816 GB (0.939)
  • Recorded value. It covers the largest measured allocation, rounded up so that it is never under-recorded.
  • Ingested data. The ingested results of run 42024862281 carry 2801 / 2812 GB. An InferenceX-app changelog backfill corrects them.

Why 0.76 and not the default 0.8

  • At 0.8, SGLang's own host-pool estimate is 0.95 × 382.3 GiB × 8 = 3120 GB, which is over 3 TB.
  • On the measured basis, 0.8 would be about 2949 / 2961 GB, under the cap by only about 1.3–1.7%.
  • 0.77 also exceeds the cap on SGLang's estimate (3003 GB). 0.76 gives 2964 GB, the largest two-decimal fraction that fits.
Pre-run expectations

The concurrency lists were chosen from the source runs on tok/s per GPU vs p90 E2EL and vs interactivity. The source runs are #4710 41301274173, #4711 41300767755, #4729 41352674113 and #4731 41386432269.

Expected E2EL frontier counts were 6 (FP8) and 7 (NVFP4).

How the measured points compare:

  • No-offload points landed within about 5% of their estimates on throughput.
  • HiCache c64 came in well above them:
    • FP8: 46.7k / 24.7 s, against 41.0k / 35.0 s expected.
    • NVFP4: 49.3k / 21.4 s, against 47.4k / 24.1 s.
  • HiCache c96:
    • FP8 was slightly lower: 48.7k / 47.4 s, against 50.6k / 43.7 s.
    • NVFP4 was higher: 55.2k / 36.0 s, against 49.9k / 46.0 s.
Settings outside the cookbook that are harness-only or default-equal
  • Harness-only: served-model-name, watchdog-timeout 1800, enable-metrics, PYTHONNOUSERSITE=1, SGLANG_TIMEOUT_KEEP_ALIVE=1800, SGLANG_CACHE_DIR, the AIPERF_* client settings, the NVFP4 checkpoint revision pin, and the B300 runners.yaml model mappings for the staged checkpoints.
  • Default-equal, kept explicit: SGLANG_NVFP4_CKPT_FP8_NEXTN_MOE=0 and SGLANG_GLM_NEXTN_MOE_PTPC=0. Both are EnvBool(False) in the v0.5.22 environ.py. The draft head is served as shipped, through the image's checkpoint-default path.
  • Removed from the earlier recipes:
    • mem-fraction-static, max-running-requests on the no-offload points, cuda-graph-max-bs-decode, chunked-prefill-size / max-prefill-tokens
    • TORCH_CUDA_ARCH_LIST, trust-remote-code (no auto_map in any checkpoint config)
    • context-length (equal to the checkpoint's 1,048,576), expert-parallel-size 1
    • model-loader-extra-config, enable-cache-report
    • the explicit hicache-* policy flags, which equal their defaults
中文

本 PR 在单台 8x B300 上同时添加 GLM-5.3-Flash FP8 与 NVFP4 的 AgentX 配置:

仅 HiCache 点偏离 cookbook:

  1. 使用自动分配的主机缓存池,--hicache-host-memory-fraction 0.76,而非 --hicache-size 32。
    • 32 GB/rank 的主机层约为设备 KV 池的四分之一,v0.5.22 会警告这会降低 L2 效果。
    • 实测运行在 0.65 时每 rank 分配约 300 GB。
  2. 设置 --max-running-requests 96。
    • 未设置时,v0.5.22 在 EAGLE 下会把并发上限重置为 48,c64/c96 会排队。
    • 实测 c96 上限 96 运行正常(50.6k tok/s/GPU,p90 E2EL 43.7 s);c80 上限 160 性能崩溃;上限 192 时显存不足。

CPU DRAM 计算:

  • 实测分配按 0.76/0.65 缩放,FP8 约 2801 GB/节点,NVFP4 约 2812 GB/节点,均低于 MODELS.md 规定的 3 TB 上限。
  • 选择 0.76 而非默认 0.8:0.8 时 SGLang 自身估算为 3120 GB,超过 3 TB;按实测口径也仅有约 1.5% 余量。

实测结果(sweep 42024862281,全部通过,所有点 power_valid=1):

  • E2EL 轴 Pareto 前沿点数:FP8 为 9 点中的 7 点,NVFP4 为 8 点中的 6 点,均为 PASS。
  • 吞吐峰值:FP8 HiCache c96 为 48,698 tok/s/GPU(p90 E2EL 47.4 s);NVFP4 HiCache c96 为 55,196 tok/s/GPU(36.0 s)。
  • GSM8K(HiCache c96):FP8 97.35%,NVFP4 97.27%。
  • 无卸载点受隐式上限 48 约束:c48 约 11–13% 的批次有排队,但吞吐与源运行一致。

HiCache 实测主机内存分配:

  • FP8 最高 2802.2 GB/节点,NVFP4 最高 2813.6 GB/节点。
  • dram-utilization 改为 0.935 / 0.939,记录值为 2804 / 2816 GB。
  • 已入库的 2801 / 2812 GB 将通过 InferenceX-app changelog backfill 更正。
AI model disclosure
  • GPT-6 Astra: coordinated the earlier stacked PRs and implemented and checked the original B300 FP8 configuration.
  • Claude Opus 5.5 (claude-opus-5-5):
    • The team lead coordinated the per-SKU consolidation.
    • The B300 agent rebuilt this PR onto main with the cookbook recipes, chose the concurrency lists and wrote this description.
    • A separate reviewer agent checked the branch.

@github-actions

github-actions Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

Thanks for the contribution!

  • Review: If this PR changes files owned by someone other than a repository admin or @SemiAnalysisAI/core, ask one eligible CODEOWNER to complete the latest PR_REVIEW_CHECKLIST.md before contacting a core maintainer on Slack. Follow the template exactly, including As a PR reviewer and CODEOWNER, I have reviewed this and have, so sign-off verification triggers.
  • PR verification: Sweeps run only when the PR appends an inferencex-e2e/perf-changelog.yaml entry and carries exactly one primary label: full-sweep-fail-fast (strongly recommended; canary plus per-matrix fail-fast), full-sweep-enabled (canary; matrix jobs continue after a failure), or non-canary-full-sweep-enabled (no canary or fail-fast). The modifiers all-evals, evals-only, and agentx-fast require a primary label. On fork PRs, a maintainer applies the label. See sweep labels and reuse.
  • After merging: PR authors must ensure all GitHub Actions jobs pass. Transient failures often pass on rerun; see how to rerun failed jobs.
中文

感谢你的贡献!

  • **审阅:**如果 PR 修改的文件归属于仓库管理员及 @SemiAnalysisAI/core 之外的 CODEOWNER,请先联系一位有资格的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,再通过 Slack 联系核心维护者。必须严格遵循模板,并保留 As a PR reviewer and CODEOWNER, I have reviewed this and have,才能触发签核验证。
  • **PR 验证:**只有当 PR 在 inferencex-e2e/perf-changelog.yaml 末尾追加了条目,并且恰好带有一个主标签时,才会运行扫描:full-sweep-fail-fast(强烈推荐;canary 加逐矩阵 fail-fast)、full-sweep-enabled(有 canary;矩阵任务在失败后继续运行)或 non-canary-full-sweep-enabled(无 canary,也无 fail-fast)。修饰标签 all-evals、evals-only 和 agentx-fast 必须与主标签一起使用。fork PR 的标签由维护者添加。参见扫描标签与复用。
  • **合并后:**PR 作者必须确保所有 GitHub Actions 任务通过。临时性失败通常可以通过重新运行恢复;参见重新运行失败任务的说明。

@functionstackx functionstackx added the full-sweep-fail-fast Full sweep with canary gate; first failure cancels the rest of that matrix (recommended) label Nov 1, 2026
@github-actions

github-actions Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Findings marked 🟡 are optional suggestions and need no follow-up push.

Comment on lines +8823 to +8835
glm5.3flash-fp8-b300-sglang-agentic-mtp:
image: lmsysorg/sglang:v0.5.22-cu130@sha256:e3a4f06001a29542fc4a8638536d9ffc5eb9c9942b08603c09b19a56eae4a1ae
model: zai-org/GLM-5.3-Flash
model-prefix: glm5.3flash
runner: cluster:b300-dsxe
precision: fp8
framework: sglang
multinode: false
srt-recipe-dir: glm5.3flash/sglang/b300-fp8-mtp
scenarios:
agentic-coding:
- search-space:
- { tp: 8, spec-decoding: mtp, kv-offloading: none, conc-list: [1, 4, 8, 16, 24, 32, 48, 64], srt-recipe: agentic.yaml }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 Results for the new GLM-5.3-Flash B300 AgentX config will never be collected, because no perf-changelog.yaml entry names it. The PR adds config key glm5.3flash-fp8-b300-sglang-agentic-mtp and its recipe, but inferencex-e2e/perf-changelog.yaml is not changed. Under AGENTS.md, that changelog entry is what starts result collection and gates /use before merge. Fix: append one block at the end of inferencex-e2e/perf-changelog.yaml with config-keys: [glm5.3flash-fp8-b300-sglang-agentic-mtp], scenario-type: [agentic-coding], an English description and pr-link, as was done for glm5.3-fp4-b300-sglang-agentic-mtp.

Why this was flagged

The diff adds the master-config key glm5.3flash-fp8-b300-sglang-agentic-mtp (nvidia-master.yaml:8823) and the recipe glm5.3flash/sglang/b300-fp8-mtp/agentic.yaml. That changes what benchmarks run, and python -m infx.matrix.changed would list the new key. AGENTS.md (Benchmark invariants) says such a change needs a perf-changelog.yaml entry, and that the entry is what triggers result collection. The diff adds no entry to inferencex-e2e/perf-changelog.yaml. The sibling glm5.3-fp4-b300-sglang-agentic-mtp has one at perf-changelog.yaml:10869-10875. Without it, the sweep is never triggered or ingested for this config, and the merge gate (/use <run_id> via merge_with_reuse) has nothing to check, so the PR can merge with a config that never produces results.

Verification: Trigger: the PR merges as it stands. AGENTS.md says at line 87: "A change that alters what any benchmark runs needs a perf-changelog.yaml entry for the affected config keys; the entry triggers result collection." Without a block, the sweep-and-ingest flow tied to the changelog never collects results for glm5.3flash-fp8-b300-sglang-agentic-mtp.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in 83a606a before applying the sweep label. The current head 3bb2eb3 includes one append-only perf-changelog block naming glm5.3flash-fp8-b300-sglang-agentic-mtp with this PR URL. Local changelog validation passes, and the exact-head sweep is running: https://github.com/SemiAnalysisAI/InferenceX/actions/runs/41300756502. This finding references the earlier 6cca971 commit.

glm5.3flash-fp8-b300-sglang-agentic-mtp:
image: lmsysorg/sglang:v0.5.22-cu130@sha256:e3a4f06001a29542fc4a8638536d9ffc5eb9c9942b08603c09b19a56eae4a1ae
model: zai-org/GLM-5.3-Flash
model-prefix: glm5.3flash

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 (optional) GLM-5.3-Flash sweep jobs get the lowest model priority in the CI queue, behind every other active model. The new model-prefix: glm5.3flash is not registered where the scheduler and docs look up prefixes. calculate_priority matches model-prefix exactly, so glm5.3flash gets +0 where glm5.3 gets +0.5 and dsr1 gets +0.05. Fix: register the new prefix everywhere prefixes are listed, which covers the 3 sites listed. Add glm5.3flash to ci-priority.yaml model-prefix and to the run-sweep.yml classifier enum, which test_ci_priority.py:252 requires. Add a GLM-5.3-Flash row to MODELS.md. Same pattern at 3 sites (configs/ci-priority.yaml:30, .github/workflows/run-sweep.yml:246, docs/MODELS.md:125).

Why this was flagged

Every matrix job generated from glm5.3flash-fp8-b300-sglang-agentic-mtp carries model-prefix: glm5.3flash (nvidia-master.yaml:8826). On push events, calculate_priority (infx/workflows/ci_priority.py:180-182) looks up adjustments.model-prefix["glm5.3flash"]. That key is absent from configs/ci-priority.yaml:30-41, so the adjustment is 0. On PR sweeps, the classifier enum at .github/workflows/run-sweep.yml:246 has no glm5.3flash. Even if the classifier returns glm5.3, _entry_from_criteria (ci_priority.py:132-140) only matches == criterion or startswith(criterion + "-"), so it projects the prefix to "". docs/MODELS.md:154 also says "Adding a model? ... add a row here in the same PR", but the Model support matrix has no glm5.3flash row. No validator rejects an unregistered prefix, so nothing catches the omission.

Verification: Trigger: every matrix job generated from the new entry, on push and on PR runs, gets no model-prefix bonus. The new entry sets model-prefix: glm5.3flash (nvidia-master.yaml:8826). configs/ci-priority.yaml:30-41 has no glm5.3flash, so the adjustment is 0, while the sibling glm5.3 gets 0.5.

@functionstackx functionstackx changed the title Add GLM-5.3-Flash FP8 B300 AgentX / 添加 GLM-5.3-Flash FP8 B300 AgentX [DNM, Experimental] Add GLM-5.3-Flash FP8 B300 AgentX / [DNM, Experimental] 添加 GLM-5.3-Flash FP8 B300 AgentX Nov 1, 2026
@Oseltamivir

Copy link
Copy Markdown
Collaborator

/use 41301274173

@github-actions

github-actions Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

@Oseltamivir staging run 41301274173. Existing staged runs will be preserved; a completion link will be posted here.

@Oseltamivir
Oseltamivir changed the base branch from feat/glm53flash-golden-al to main November 5, 2026 11:26
Serve both precisions with the SGLang cookbook's B300 Low Latency flags:
GPU-resident KV at concurrency up to 48, and at concurrency 64 and 96
HiCache with auto-sized host pools (fraction 0.76, within the 3 TB node
cap) and max-running-requests 96, which SGLang otherwise resets to 48
under EAGLE.
@Oseltamivir Oseltamivir changed the title [DNM, Experimental] Add GLM-5.3-Flash FP8 B300 AgentX / [DNM, Experimental] 添加 GLM-5.3-Flash FP8 B300 AgentX Add GLM-5.3-Flash FP8 and NVFP4 B300 SGLang AgentX / 添加 GLM-5.3-Flash FP8 与 NVFP4 B300 SGLang AgentX Nov 5, 2026
@Oseltamivir Oseltamivir added full-sweep-fail-fast Full sweep with canary gate; first failure cancels the rest of that matrix (recommended) and removed full-sweep-fail-fast Full sweep with canary gate; first failure cancels the rest of that matrix (recommended) labels Nov 5, 2026
@Oseltamivir

Copy link
Copy Markdown
Collaborator

/use 42024862281

@github-actions

github-actions Bot commented Nov 6, 2026

Copy link
Copy Markdown
Contributor

@Oseltamivir staging run 42024862281. Existing staged runs will be preserved; a completion link will be posted here.

# Conflicts:
#	inferencex-e2e/perf-changelog.yaml
Run 42024862281 allocated up to 2802.2 GB (FP8) and 2813.6 GB (NVFP4) of
HiCache host pools per node; dram-utilization 0.935 and 0.939 record
2804 and 2816 GB.

@Oseltamivir Oseltamivir left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Core approval after checking the work.

  • Sweep run 42024862281 (selected via /use) finished green on swept head 88199b2: FP8 and NVFP4, base points at low concurrency and HiCache at high concurrency, with no TP4 on the 8-GPU node.
  • PR-own diff 88199b2 → 216f4da changes only dram-utilization: FP8 0.933667 → 0.935 and NVFP4 0.937334 → 0.939. The generator records 2804/2816 GB, ≥ the measured 2802.2/2813.6 GB. No server or recipe arguments changed.
  • Push run 42147521719 passed the reuse gate and skipped every benchmark.
  • The reviewer agent independently confirmed the same.
  • The only conflict with main is the perf-changelog tail, which merge_with_reuse resolves.

Core 审批,已核对。

  • /use 指定的扫测运行 42024862281 在 88199b2 上全部通过:FP8 与 NVFP4 两条线,低并发为基础点,高并发为 HiCache;8 卡节点不跑 TP4。
  • 88199b2 → 216f4da 之间本 PR 只改了 dram-utilization:FP8 从 0.933667 改为 0.935,NVFP4 从 0.937334 改为 0.939。生成器记为 2804/2816 GB,不低于实测的 2802.2/2813.6 GB。服务器和 recipe 参数均未改动。
  • 推送后的运行 42147521719 通过复用门禁,所有基准任务均被跳过。
  • 审查代理独立核对,结论一致。
  • 与 main 的唯一冲突在 perf-changelog 末尾,由 merge_with_reuse 自动解决。

@Oseltamivir

Copy link
Copy Markdown
Collaborator

/reuse-sweep-run 42024862281

# Conflicts:
#	inferencex-e2e/perf-changelog.yaml
@github-actions

github-actions Bot commented Nov 6, 2026

Copy link
Copy Markdown
Contributor

Ingest report — ✅ Results ingested into the production database.

Ingest workflow · Merge Ingest run · Benchmark source run

Category new duplicate skipped unmapped failed
benchmark 17 0 17 0 0
eval 2 2 2 0 0
trace 17 0 0 0 0
power 17 0 0 0 0

benchmarkFiles 18, rawBenchmarkRows 34, coveredByPerJobFiles 17, purgedPoints 0, failedRunRows 0, runStatsNew 0, runStatsDuplicate 0, evalSamplesNew 2638, gpuMetricSamplesNew 901864, powerPublicationPoints 17, changelogEntriesWritten 1

Counts cover only this run. Rows: benchmark_results, eval_results, agentic rows linked to a trace, gpu_metrics series. This comment updates if the ingest is rerun.

中文

Ingest 报告 — ✅ 结果已写入 production 数据库。

上表仅统计本次运行写入的数据,各行单位依次为 benchmark_results 行、eval_results 行、已关联 trace 的 agentic 行和 gpu_metrics 序列。重新运行 ingest 时本评论会原地更新。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

full-sweep-fail-fast Full sweep with canary gate; first failure cancels the rest of that matrix (recommended)

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants