From 76e62a1da0f148a28d705ac25632e4b151feedfb Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 14 Oct 2026 13:57:17 +0000 Subject: [PATCH 1/2] docs(benchmarks): the fresh-process table says it times a build handed to the solver, not a solve Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01NTByC5UJJWvcFj3mvmv83v --- README.md | 4 ++-- bench/report.py | 2 +- docs/about/benchmarks.md | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 74e2a6674..5920cac94 100644 --- a/README.md +++ b/README.md @@ -38,8 +38,8 @@ which states the math and checks it before any data exists. reads it where it lies and solves the same question again, and a directory of runs reads as one set of tables. [Archiving a solve →](https://specsolve.readthedocs.io/en/latest/howto/archiving/) -- **Fast from the first call.** A script that solves one small model finishes - in about half a second, about half of linopy's time +- **Fast from the first call.** A script that builds one small model and hands + it to the solver finishes in about half a second, about half of linopy's time ([#2031](https://github.com/fluxopt/specsolve/pull/2031)). The solver stays loaded: `update()` puts new numbers on it, and the next solve carries on from where the last one ended. diff --git a/bench/report.py b/bench/report.py index 0307564dd..d2d2dd699 100644 --- a/bench/report.py +++ b/bench/report.py @@ -400,7 +400,7 @@ def order(key: tuple[str, str]) -> tuple[float, str, str]: def fresh(rows: dict[Key, Row]) -> str: - """What a script that solves one model pays, launch to exit, on `FRESH_SINK`, as a heat table. + """What a script that builds one model pays, launch to exit, on `FRESH_SINK`, as a heat table. One row per arm and one column per case, each case at the largest rung the fresh phase measured, so a reader compares libraries down a column. Wall diff --git a/docs/about/benchmarks.md b/docs/about/benchmarks.md index fdb900a77..22e2a3ac3 100644 --- a/docs/about/benchmarks.md +++ b/docs/about/benchmarks.md @@ -110,11 +110,11 @@ solver that every panel and the table run through. specsolve-in-memory and matrix floor columns are not shaded: they are references, not rivals. `>30 s` and `>16 GB` are sizes the harness refused. -## A script that solves one model +## A script that builds one model The charts leave out what a script pays to start: the interpreter, the import -and the first build. This table times a new process from launch to exit, on -HiGHS. +and the first build. This table times a new process from launch to exit. The +process builds the model, hands it to HiGHS and exits, without a solve. @@ -130,8 +130,8 @@ HiGHS. -A script that solves one small model with specsolve finishes in about half a -second, about half of linopy's time +A script that builds one small model with specsolve and hands it to the solver +finishes in about half a second, about half of linopy's time ([#2031](https://github.com/fluxopt/specsolve/pull/2031)). ## Not measured yet From 6aa42fd6574b31520957c0ad15120519363f9588 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 14 Oct 2026 13:57:35 +0000 Subject: [PATCH 2/2] docs: the changelog names the fresh-process wording Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01NTByC5UJJWvcFj3mvmv83v --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ca1aefc1f..0e74fabc3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ it releases that version ([RELEASING.md](https://github.com/fluxopt/specsolve/bl ## Upcoming version +- docs: the fresh-process table says it times a build handed to the solver, not a solve ([#2041](https://github.com/fluxopt/specsolve/pull/2041)) - docs: the published benchmarks add a model size at five times each tenfold step, and take fewer rounds where a build takes seconds ([#2032](https://github.com/fluxopt/specsolve/pull/2032)) - docs(benchmarks): the matrix floor times only handing a finished matrix to the solver ([#2034](https://github.com/fluxopt/specsolve/pull/2034)) - fix(engine): the rows a restriction removed and the rows with no term are reported together ([#2029](https://github.com/fluxopt/specsolve/pull/2029))