From eb9759e79b723bc675ce91f00e24317e5f86e095 Mon Sep 17 00:00:00 2001 From: bench Date: Sun, 11 Oct 2026 08:28:04 +0900 Subject: [PATCH] Lead the README from the maintained cases to the committed reports --- README.md | 19 +++++++++++++++++++ result/README.md | 22 ++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 result/README.md diff --git a/README.md b/README.md index b0721a5..a212cef 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,25 @@ Reproducible benchmarks for tensor network algorithms in [tensor4all-rs](https://github.com/tensor4all/tensor4all-rs). Inputs use fixed seeds, timed regions exclude preparation, every arm writes JSON, and reports are generated from those records. +## Results + +Every committed sweep is a directory under [`result/`](result/), one per hardware +profile. Each holds `run.yaml` (machine, revisions, thread count and CPU set), +`raw/` (one JSON record per case, arm and instance) and the generated +`report.md`. Read the reports: + +| Profile | Machine | Threads | tensor4all-rs | Report | +| --- | --- | ---: | --- | --- | +| `linux-ryzen-ai-9-hx-470` | AMD Ryzen AI 9 HX 470, 12 physical cores | 1 | `a515738` | [report.md](result/linux-ryzen-ai-9-hx-470/report.md) | +| `linux-ryzen-ai-9-hx-470-4t` | the same machine, CPUs 0-3 | 4 | `a515738` | [report.md](result/linux-ryzen-ai-9-hx-470-4t/report.md) | +| `linux-epyc-7713p` | AMD EPYC 7713P | 1 | `9e9aeda` | [report.md](result/linux-epyc-7713p/report.md) | + +The one-thread profile is the reference configuration, and each report repeats +the machine, revisions, thread count and CPU set in its header. The `-4t` +profile is scaling evidence only: read it against the one-thread profile of the +same machine, never instead of it. [`result/README.md`](result/README.md) +describes the layout. + ## Maintained cases | Case | Input and operation | Arms | Scaling axis | diff --git a/result/README.md b/result/README.md new file mode 100644 index 0000000..3826e53 --- /dev/null +++ b/result/README.md @@ -0,0 +1,22 @@ +# result/ + +One directory per hardware profile, each holding one complete sweep of the three +maintained cases: + +```text +result//run.yaml machine, source and tensor4all-rs revision, thread count, CPU set +result//raw/*.json one record per case, arm and instance +result//report.md generated by scripts/report.py from the records above +``` + +`report.md` is the human-facing entry point. The records behind it are the +source of truth: they carry the per-instance timings, accuracy against the case +reference, output bond dimensions, allocation counts, and the parameters that +produced them. + +A profile name is the machine alone on the reference single-core sweep, plus +`-t` on the optional multithreaded scaling sweep of the same machine. Read a +`-t` profile against that machine's single-core profile, never instead of it. + +Regenerate a report with `python3 scripts/report.py result/`; never edit +one by hand. Historical reports are not maintained, use git history.