Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -413,44 +413,6 @@ used soak artifact schema `0.2.0` and older UniLab, unilab-rl, and UniSim
commits before current schema-v1 consumer enforcement. Reproduce from the exact
checked-out head with the command above when current-head evidence is required.

## Genesis Collector Attribution Benchmark

The #457 Genesis optimization lane uses the frozen FlashSAC G1
motion-tracking owner rather than the benchmark's generic environment default.
`--cases production` selects 2,048 environments from the owner, fixes both
seeds to 457, enables only this benchmark's opt-in Genesis attribution
diagnostics, and rejects a numeric `--num-envs` override. It fails closed
unless UniSim negotiates exactly one supported `DEVICE_RESIDENT / DIRECT`
runtime pairing: non-HIP Torch CUDA with `gs.cuda`, or HIP/ROCm Torch with
`gs.amdgpu`. Both use the same collector topology and hot path. Metal, CPU,
portable, mismatched, and substitute-backend requests are not silent fallbacks.

```bash
CUDA_VISIBLE_DEVICES=0 uv run --extra genesis \
scripts/benchmark/rl/benchmark_offpolicy_collector_active.py \
--cases production \
--warmup-steps 10 \
--measure-steps 100 \
--tail-steps 20 \
--replay-capacity-steps 64 \
--out-json /absolute/path/issue457-collector.json \
--out-csv /absolute/path/issue457-collector.csv
```

The result envelope uses schema `unilab.offpolicy-collector-active/2`.
`env_step_ms`, `replay_ms`, and `bookkeeping_ms` are the only additive active
phases. Construction, first-transition setup, warmup, and teardown are outside
active throughput; the tail is a subset of the active window; backend and
Manager attribution children are non-additive diagnostics. The JSON records
p50/p95, reset counts, package/GPU/git provenance, Genesis environment
variables, the negotiated tensor profile (including `torch_runtime_family` and
`genesis_backend`), and the `unisim-core` distribution origin. Keep the JSON,
CSV, and console log together in external immutable artifact storage;
`scripts/benchmark/outputs/` remains intentionally untracked. Keep the #457
[NVIDIA comparison](https://gist.github.com/TATP-233/27b3ce4d970628f44574eb77865475da)
alongside ROCm results; compare like-for-like owner profiles and do not infer a
vendor-specific hot path or training-convergence quality from throughput.

## Optional Phase-Local Probe

`g1_flashsac_backend.py` is a diagnostic probe, not the canonical end-to-end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -381,42 +381,6 @@ artifact schema `0.2.0`,且 UniLab、unilab-rl、UniSim commit 早于当前
schema-v1 consumer enforcement。需要当前 head 证据时,请用上面的命令在确切
checkout 上重新执行。

## Genesis Collector 归因 Benchmark

#457 的 Genesis 优化 lane 使用冻结的 FlashSAC G1 motion-tracking owner,
而不是 benchmark 的通用环境数默认值。`--cases production` 从 owner 选择
2048 个环境,将两个 seed 固定为 457,只启用该 benchmark 的 opt-in Genesis
归因诊断,并拒绝数字 `--num-envs` override。除非 UniSim 恰好协商出一种受支持
的 `DEVICE_RESIDENT / DIRECT` runtime 配对——非 HIP Torch CUDA + `gs.cuda`,
或 HIP/ROCm Torch + `gs.amdgpu`——否则它会 fail closed。两种配对使用相同的
collector topology 与热路径。Metal、CPU、portable、不匹配及替代后端请求不会
静默回退。

```bash
CUDA_VISIBLE_DEVICES=0 uv run --extra genesis \
scripts/benchmark/rl/benchmark_offpolicy_collector_active.py \
--cases production \
--warmup-steps 10 \
--measure-steps 100 \
--tail-steps 20 \
--replay-capacity-steps 64 \
--out-json /absolute/path/issue457-collector.json \
--out-csv /absolute/path/issue457-collector.csv
```

结果 envelope 使用 schema `unilab.offpolicy-collector-active/2`。只有
`env_step_ms`、`replay_ms` 与 `bookkeeping_ms` 是可加的 active phase。
construction、首步 setup、warmup 与 teardown 不计入 active throughput;
tail 是 active window 的子集;backend 与 Manager 归因 child 是不可加诊断。
JSON 记录 p50/p95、reset 计数、包/GPU/git provenance、Genesis 环境变量、
协商出的 tensor profile(包括 `torch_runtime_family` 与 `genesis_backend`)以及
`unisim-core` 发行版来源。把 JSON、CSV 与 console log 一起保存在外部不可变
artifact storage;`scripts/benchmark/outputs/` 仍有意不入库。ROCm 结果需与
#457 保存的
[NVIDIA 对照](https://gist.github.com/TATP-233/27b3ce4d970628f44574eb77865475da)
并列保留;只比较相同 owner profile,不从吞吐推断 vendor-specific 热路径或训练
收敛质量。

## 可选 Phase-Local Probe

`g1_flashsac_backend.py` 是诊断 probe,不是 canonical 端到端 benchmark。它
Expand Down
Loading