diff --git a/docs/plans/ember-tune.md b/docs/plans/ember-tune.md index 037871b7..5de75c53 100644 --- a/docs/plans/ember-tune.md +++ b/docs/plans/ember-tune.md @@ -29,7 +29,7 @@ prompt) for both knobs; off, it measures only. | Vendor | Power limit | Core clock cap | Memory clock | How | Rights | |---|---|---|---|---|---| | NVIDIA | `nvidia-smi -pl `, percent of the default, inside `power.min_limit` and `power.max_limit` | `nvidia-smi -lgc 0,`, percent of `clocks.max.gr`; `-rgc` = unlocked | never touched (`-lmc` is not used); read back as `clocks.mem` | directly when the engine is elevated, else the one-prompt helper (` pl `, ` lgc `, ` rgc` in `sweep/cmd.txt`) | administrator, so only with Power control on | -| AMD | `igneum-gpu-telemetry --card N --set-plimit ` (0 = default, -20 = 80%), inside the `tune` line's `plimit_range` (PC 1's 9070 XT: -30 to 10, so 70% is the floor) | `--set-gmax` only when the `tune` line's `gmax_range` is absolute MHz (floor 0 or above); on RDNA 4 the range is an offset from stock (-500 to 1000 on PC 1) and the clock knob stays closed until the stock clock is known; `--reset` for the default point | not settable through ADLX on RDNA 4; read back as `mclk_mhz`, and a step whose mean memory clock falls under 95% of the baseline's is marked and cannot win | the helper, one process per request, exit 0 and a `tune ... ok` line | none on Windows (ADLX manual tuning); root on Linux, so measure only there | +| AMD | `igneum-gpu-telemetry --card N --set-plimit ` (0 = default, -20 = 80%), inside the `tune` line's `plimit_range` (PC 1's 9070 XT: -30 to 10, so 70% is the floor). RULE (run 6, 6 October 2026): ADLX reports the limit as an OFFSET, never watts, so an AMD step is applied on the helper's acknowledgement (`Run::applied`: a card with no limit readback confirms on `acked`), and the draw comes from the telemetry stream (`sample_telemetry`), never from a limit readback; `limit_w` is 0 for every AMD card by design | `--set-gmax` only when the `tune` line's `gmax_range` is absolute MHz (floor 0 or above); on RDNA 4 the range is an offset from stock (-500 to 1000 on PC 1) and the clock knob stays closed until the stock clock is known; `--reset` for the default point | not settable through ADLX on RDNA 4; read back as `mclk_mhz`, and a step whose mean memory clock falls under 95% of the baseline's is marked and cannot win | the helper, one process per request, exit 0 and a `tune ... ok` line | none on Windows (ADLX manual tuning); root on Linux, so measure only there | | Apple | none | none | none | measure only | none | Vendor limits are never exceeded and the floor is never undercut: the plan clamps every point (`Limits::clamp_clock`, @@ -284,6 +284,16 @@ After the run (nvidia-smi, the engine gone, the installed miners not yet back): ## 8a. Next-cut notes (for the 0.3.12 shipper) +For the 0.3.14 cut (6 October 2026, after run 6), on ember-tune: + +| Commit | What | Where | +|---|---|---| +| bd7fcf4 | AMD: a power step with no limit readback is applied on the acknowledgement (run 6 aborted the 9070 XT's ladder at step 1 on "card reports 0 W") | ember.rs `Run::applied` + test | +| 200362a | `task_exe` prefers the installed exe for every path that is not itself an install candidate; the helper's `reregister` verb; the clock ladder and floor to 45%; a chosen point on the floor says so; the fleet page's team rows | powertask.rs, ember.rs, engine.rs, site | +| 5165de7, 9fba504, 5b0968f | Ember 2's Settings (goal, price, climb), £/day and the curve on the card; the playbook's AMD watts source and kit-7 preference; run 6 notes | ui, relay/playbooks, docs | + +Earlier (shipped in 0.3.12 and 0.3.13 unless marked): + | Commit | What | Where | |---|---|---| | b671c8b | every `quit:` names its source; Power control alone decides; no cap at start under `--sweep` | main.rs, server.rs, engine.rs (separable) |