From 7cdf85cb746d9bc52ee20e0192067d2ed054b83c Mon Sep 17 00:00:00 2001 From: Trefor Southwell Date: Sun, 16 Aug 2026 08:13:31 +0100 Subject: [PATCH 1/7] docs: design for a persistent scratch and thread pool in the kernel Batching made planning 35% faster but threading on top of it bought 1.6%. A census showed why: 25,091 batch calls with a median of 6 jobs, against which a fresh thread pool and a fresh 70KB scratch are built per call. Staged so the low-risk half (per-thread scratch, which also helps the serial default) is measured before the concurrency half. Co-Authored-By: Claude Opus 5 (1M context) --- .../2026-08-16-kernel-thread-pool-design.md | 218 ++++++++++++++++++ 1 file changed, 218 insertions(+) create mode 100644 docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md diff --git a/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md b/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md new file mode 100644 index 000000000..aeb752cef --- /dev/null +++ b/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md @@ -0,0 +1,218 @@ +# Persistent scratch and thread pool in the prediction kernel + +**Status:** design, approved in conversation, not yet implemented. + +**Branch:** `perf/kernel-thread-pool`, stacked on `perf/kernel-batch-abi` (PR #4540). Neither +`pk_run_batch` nor `PkScratch` exists on `main` — both arrive with that PR — so this work cannot be +based on `main`. The follow-up PR takes `perf/kernel-batch-abi` as its base so its diff shows only +this change, and is retargeted to `main` once #4540 merges. + +## Why + +PR #4540 replaced the per-scenario prediction fan-out with a batch that reaches the C++ kernel in one +`pk_run_batch` call. It made planning 35-37% faster, but enabling kernel threading on top of it +bought only 1.6% — inside the run-to-run noise band. + +A census over one 20-scenario benchmark run explains why: + +```text +25,091 pk_run_batch calls carrying 253,899 jobs +mean 10.12 jobs/call, median 6, p95 24, max 363 +97.4% of calls carry fewer than 32 jobs +``` + +The median batch is six jobs of roughly 30us each — about 180us of simulation. Against that, +`pk_run_batch` builds and joins a fresh `std::vector` on every call, and the serial path +constructs a fresh `PkScratch` whose first use heap-allocates roughly 70KB. Both costs are paid per +call, and at these batch sizes both are the same order as the work they wrap. + +The kernel's own comment already records that this class of cost dominates: scratch reuse was +introduced because "each scenario would otherwise heap-allocate ~70KB, and 1200 of those per batch +put every worker thread in contention on the allocator. Measured 4 threads at 0.6x of serial before +this, because the simulation is cheap enough that malloc, not arithmetic, was the bottleneck." + +This design removes both per-call costs. It is deliberately staged, because the two halves carry very +different risk and the first may be enough on its own. + +## Scope + +**In scope:** `apps/predbat/prediction_kernel.cpp`, its tests, and the six shipped binaries. + +**Out of scope:** any Python change. `n_threads` stays a per-call argument, the struct layouts do not +move, and the function signatures are unchanged, so `prediction_kernel.py` is untouched. + +**Not an ABI or parity change.** Results are bit-identical before and after, so neither +`PK_ABI_VERSION` nor `PK_PARITY_REVISION` is bumped. A binary built before this change still loads +and runs correctly, just without the speedup. The six architecture binaries are still rebuilt and +shipped. + +## Stage 1 — one scratch per thread + +`PkScratch` is constructed at three sites: `pk_run` (prediction_kernel.cpp:1279), each worker lambda +in `pk_run_batch` (:1341), and the serial batch loop (:1352). All three become one accessor: + +```cpp +// One scratch per thread, reused for that thread's lifetime. Every field is fully rewritten before +// it is read on each run - build_window_membership assigns exactly n_steps entries and the clip +// helpers clear-then-push - which is the same invariant that already lets one scratch serve a whole +// stride. Extending it across calls means a thread allocates these buffers once, not once per call. +// Thread-local rather than per-context because nothing here survives a simulation, so it never needs +// to belong to a particular context. +static PkScratch &thread_scratch() +{ + static thread_local PkScratch scratch; + return scratch; +} +``` + +Each of the three sites drops its local and passes `thread_scratch()` instead. + +### The risk this introduces + +Reuse within a call spans one context, so `n_steps` is constant. Reuse across calls spans contexts, +and Predbat builds a new context every plan cycle — with a different `n_steps` whenever +`forecast_minutes` changes. `build_window_membership` assigns exactly `n_steps` entries and the clip +vectors clear before pushing, so a shrink cannot expose stale tail data through any read path. + +That is an argument, not a proof, so it is pinned by a test (see Testing). + +### Expected effect + +Removes roughly 25,000 allocations of ~70KB per plan from the serial path — which is the default for +`threads: 0`, for `annual.py`, and for the whole test harness. Independently measurable and +independently shippable. + +## Stage 2 — one pool for the process + +A single pool, allocated on first threaded use and never destroyed, holding workers parked on a +condition variable. + +```cpp +class PkThreadPool { +public: + void reserve_workers(int32_t want); // grows, never shrinks + void run(const ContextStore *c, const PkBatchJob *jobs, int32_t n_jobs, PkBatchResult *results, int32_t use); +private: + std::mutex mutex; + std::condition_variable work_ready; // workers park here + std::condition_variable work_done; // the caller waits here + const ContextStore *cur_ctx = nullptr; + const PkBatchJob *cur_jobs = nullptr; + PkBatchResult *cur_results = nullptr; + int32_t cur_n_jobs = 0; + int32_t cur_use = 1; + uint64_t generation = 0; // bumped per batch; workers wake when it changes + int32_t outstanding = 0; // lanes still running + std::vector workers; +}; +``` + +### Dispatch + +The lane count is `use = min(n_threads, n_jobs, workers.size() + 1)` — bounded by what the caller +asked for, by how much work there is, and by how many workers actually exist (see Thread creation +failure). The `+ 1` is the calling thread, which takes a lane itself. + +The caller, holding `mutex`: + +1. publishes the batch — context, jobs, results, `n_jobs` and `use` +2. sets `outstanding = use - 1` +3. bumps `generation` +4. broadcasts on `work_ready` + +then releases the mutex and **runs lane 0 itself**, striding `i = 0; i < n_jobs; i += use`. This +matters at these batch sizes: six jobs wakes five workers rather than six, and the caller does useful +work instead of blocking. Finally it waits on `work_done` until `outstanding` reaches zero. + +Each worker parks on `work_ready` until `generation` changes, records the new generation +unconditionally so it cannot spin, and participates only if its lane index is `< cur_use`. Workers +outside that range park again without touching `outstanding`. A participating worker copies the batch +pointers locally, releases the mutex, strides `i = lane; i < n_jobs; i += use`, then re-acquires the +mutex and notifies `work_done` if it was the last one out. + +Workers simulate through `thread_scratch()` from stage 1, so a persistent worker allocates its +buffers on its first batch and reuses them for the life of the process. Stage 1 replaced the scratch +local in the per-call worker lambda; stage 2 replaces that lambda with a parked worker, and the +accessor carries over unchanged. + +Nobody holds the mutex while simulating. The partition is the same stride the current code uses, and +`run_batch_job` already only reads the const context and writes its own result slot — the property +that makes today's threading safe is unchanged. + +### Bypass + +`n_threads <= 1 || n_jobs <= 1` runs inline exactly as today and never touches the pool, so +`threads: 0`, `annual.py` and the test harness never allocate a worker. + +### Sizing + +`reserve_workers` grows to whatever `n_threads` asks for and never shrinks. A later, smaller request +simply wakes fewer lanes. + +## Error handling + +**Fork.** Threads do not survive `fork()`, so a child would inherit a pool whose workers do not exist +and hang waiting on them. Nothing in Predbat forks today — PR #4540 deleted the last thing that did — +but `hass.py` still calls `set_start_method("fork")`, so a future feature that spawns a process would +trip it. A `pthread_atfork` child handler sets the pool pointer to null: no allocation, no locking, +async-signal-safe. The child lazily builds a fresh pool on its next batch, and the dead object leaks +in the child's address space, which is standard and costs a few hundred bytes. Registered once via +`std::call_once` before the pool is first created, guarded by `#if defined(__unix__) || defined(__APPLE__)`. + +**Concurrent callers.** Two Python threads can enter `pk_run_batch` at once, because ctypes releases +the GIL. With one shared pool their published state would race, so a dispatch mutex is held for the +whole batch and concurrent callers serialise. Today they would each spawn private threads and run in +parallel, so this is a regression in a case nothing exercises; a data race is the worse option. + +**Thread creation failure.** `std::thread` throws `std::system_error` under resource exhaustion. +`reserve_workers` catches it, keeps whatever workers were created, and `run` clamps `use` to +`workers.size() + 1` — falling all the way back to inline if none exist. A home-automation daemon +should degrade, not crash. + +**Shutdown.** The pool is never destroyed, deliberately. A static destructor running while CPython +tears down risks a deadlock for no benefit; the OS reclaims the threads at exit. + +**Per-job failures** are unchanged: each job's `status` field still carries its own result, so one +malformed scenario cannot discard the fan-out. + +## Testing + +Every new test is mutation-checked — break the thing deliberately, confirm the test fails, restore. +That method found three real defects on PR #4540, two of them tests that could not fail. + +| Pins | Test | +|---|---| +| Stage 1's risk | Alternate two contexts with different `forecast_minutes` on one thread; each must match its single-context result. Stale tail data or a mis-sized buffer appears here and nowhere else. | +| Worker reuse | Run the 1/2/4/8-thread parity sweep twice. The first batch creates workers, the second wakes parked ones — different paths, and "works once, breaks on reuse" is the classic pool bug. | +| Lane arithmetic | `n_jobs < n_threads`: a 3-job batch at 16 threads, so `use = 3` and thirteen workers must park without touching `outstanding`. This is the median-6 production shape. | +| Grow then wake fewer | Call at 8 threads, then 2, then 16. | +| The dispatch mutex | Two Python threads calling `pk_run_batch` at once; results must match serial. | +| The `pthread_atfork` handler | `os.fork()`, run a batch in the child, compare against the parent's result, check the child's exit status. Skipped where fork is unavailable. Without this the handler is unverified code whose whole job is preventing a hang. | + +Existing gates that must continue to hold: the `kernel_parity` sweeps, the 20-scenario byte-identical +run (`+0.0000` on metric, cost and all three PV futures), and the full suite. + +## Measurement + +Interleaved, best of 3 per side, on one machine in one sitting — the method used for PR #4540's +numbers. + +- **Stage 1** on the serial benchmark (`threads: 0`), which is where the 25,000 allocations are. +- **Stage 2** on the threaded benchmark, with serial re-checked to confirm it has not regressed. + +Each stage is measured against the tree it modifies, so the two effects are attributable separately. +If stage 1 recovers most of the available time, stage 2 can be dropped rather than accepting its +concurrency risk for a small remainder. + +**Honest ceiling.** This turns a thread creation (tens of microseconds) into a wake (a few +microseconds), so threading can pay where it currently cannot. But the upside is still bounded by the +kernel's share of plan time, so single-digit to low-teens percent is the realistic expectation, not +anything resembling a 16x. + +## Deliverables + +- `apps/predbat/prediction_kernel.cpp`: `thread_scratch()`, `PkThreadPool`, the atfork handler, and + `pk_run_batch` rewired onto them. +- `apps/predbat/tests/test_kernel_parity.py`: the six tests above. +- All six shipped binaries rebuilt with `build_kernel_cross.sh` and confirmed to load. +- No change to any Python module. From 57bd5bd3b07d540f9cf580706f561d500e5a60e0 Mon Sep 17 00:00:00 2001 From: Trefor Southwell Date: Sun, 16 Aug 2026 08:39:35 +0100 Subject: [PATCH 2/7] perf(kernel): give each thread one scratch instead of one per call PARKED - measured as a no-op, do not merge on its own. Replaces the three per-call PkScratch constructions with a thread_local accessor, so a thread grows its ~70KB of buffers once rather than once per pk_run_batch call (~25,000 of them per plan). Measured on the serial benchmark, interleaved, best of 3: 26.291s before, 26.344s after - no difference against ~1.8% run-to-run spread. The hypothesis was wrong: the kernel's comment about the allocator being the bottleneck was recorded under four threads contending, and one thread repeatedly allocating and freeing the same-sized block never leaves the allocator's thread cache. Kept on this branch because the persistent-worker design needs per-worker scratch anyway, and the two tests are worth having either way: one pins that the buffers stop being rebuilt per call (it fails before this change), the other that a reused scratch cannot leak between contexts of different n_steps (verified by mutation - relaxing the assign to skip shrinking makes it fail). Co-Authored-By: Claude Opus 5 (1M context) --- apps/predbat/prediction_kernel.cpp | 51 ++++++++++-- apps/predbat/tests/test_kernel_parity.py | 98 ++++++++++++++++++++++++ 2 files changed, 143 insertions(+), 6 deletions(-) diff --git a/apps/predbat/prediction_kernel.cpp b/apps/predbat/prediction_kernel.cpp index 79bc6c776..a9ae9f24c 100644 --- a/apps/predbat/prediction_kernel.cpp +++ b/apps/predbat/prediction_kernel.cpp @@ -16,6 +16,7 @@ // Build: bash apps/predbat/build_kernel.sh (g++/clang, C++17, no dependencies) #include +#include #include #include #include @@ -299,12 +300,42 @@ struct PkBatchResult { // each scenario would otherwise heap-allocate ~70KB, and 1200 of those per batch put every worker // thread in contention on the allocator. Measured 4 threads at 0.6x of serial before this, because // the simulation is cheap enough that malloc, not arithmetic, was the bottleneck. +// +// See thread_scratch() below: one of these now serves every batch a thread runs, not one per call. + +// Counts PkScratch constructions for the life of the library, for pk_scratch_construct_count(). The +// suite asserts this stops growing with the number of batches rather than trusting the reuse. +std::atomic g_scratch_constructions{0}; + struct PkScratch { std::vector charge_member, export_member; std::vector clipped_start, clipped_end; std::vector clipped_limit; + + PkScratch() + { + g_scratch_constructions.fetch_add(1, std::memory_order_relaxed); + } }; +// One scratch per thread, reused for that thread's lifetime. +// +// Every field is fully rewritten before it is read on each run - build_window_membership assigns +// exactly n_steps entries and the clip helpers clear-then-push - which is the same invariant that +// already let one scratch serve a whole stride within a batch. Extending it across calls means a +// thread grows these buffers once instead of once per call: a benchmark plan issues ~25,000 batch +// calls, and at a median of 6 jobs each the ~70KB allocation was the same order as the simulation it +// wrapped. +// +// Thread-local rather than per-context because nothing here survives a simulation, so it never needs +// to belong to a particular context. A thread that later runs a context with a different n_steps +// simply has the vectors reassigned to the new length. +static PkScratch &thread_scratch() +{ + static thread_local PkScratch scratch; + return scratch; +} + // Deep-copied context storage so Python-side buffers can be freed after create struct ContextStore { std::vector rate_import, rate_export, alert_keep; @@ -1276,8 +1307,7 @@ int32_t pk_run(int64_t handle, const PkScenario *s, PkResult *out) if (!c) { return 1; } - PkScratch scratch; - return pk_run_one(c, s, out, -1, -1, nullptr, nullptr, scratch); // c is the store + return pk_run_one(c, s, out, -1, -1, nullptr, nullptr, thread_scratch()); // c is the store } // Run n_jobs scenarios against one context in a single call. @@ -1338,9 +1368,8 @@ int32_t pk_run_batch(int64_t handle, const PkBatchJob *jobs, int32_t n_jobs, PkB pool.reserve(use); for (int32_t t = 0; t < use; t++) { pool.emplace_back([c, jobs, results, n_jobs, use, t]() { - PkScratch scratch; for (int32_t i = t; i < n_jobs; i += use) { - run_batch_job(c, jobs[i], results[i], scratch); + run_batch_job(c, jobs[i], results[i], thread_scratch()); } }); } @@ -1349,14 +1378,24 @@ int32_t pk_run_batch(int64_t handle, const PkBatchJob *jobs, int32_t n_jobs, PkB } return 0; } - PkScratch scratch; for (int32_t i = 0; i < n_jobs; i++) { - run_batch_job(c, jobs[i], results[i], scratch); + run_batch_job(c, jobs[i], results[i], thread_scratch()); } return 0; } +// Test hook: how many PkScratch instances have been constructed since the library was loaded. +// +// The scratch buffers are the only heap allocation a simulation makes, and the kernel's whole +// batching win rests on not paying them per call - so the suite asserts this counter stops growing +// with the number of batches rather than trusting the code to be reusing them. +int64_t pk_scratch_construct_count(void) +{ + return g_scratch_constructions.load(std::memory_order_relaxed); +} + + // Test hook: sweep SoC densely and confirm the precomputed bucket boundaries give exactly the same // percent as the round_py path they replace. Returns the number of disagreements (0 = equivalent). int32_t pk_verify_soc_percent_table(double soc_max, int32_t samples) diff --git a/apps/predbat/tests/test_kernel_parity.py b/apps/predbat/tests/test_kernel_parity.py index 3183e6cdf..8bb0b4e3c 100644 --- a/apps/predbat/tests/test_kernel_parity.py +++ b/apps/predbat/tests/test_kernel_parity.py @@ -1124,6 +1124,100 @@ def run_soc_percent_table_tests(): return failed +def run_scratch_reuse_tests(my_predbat, batches=10): + """Check a thread builds its scratch buffers once, not once per batch, returns True on failure. + + The scratch vectors are the only heap allocation a simulation makes - roughly 70KB once they have + grown to n_steps - and a benchmark plan issues around 25,000 batch calls, so paying that per call + is the difference between the allocator and the arithmetic being the bottleneck. The kernel + exposes pk_scratch_construct_count for this: the count must stop growing with the number of + batches rather than tracking it. + """ + print("**** Running kernel scratch reuse tests ****") + lib = prediction_kernel.KERNEL_LIB + if not lib or not hasattr(lib, "pk_scratch_construct_count"): + print("SKIP: kernel does not expose pk_scratch_construct_count") + return False + + lib.pk_scratch_construct_count.restype = ctypes.c_int64 + lib.pk_scratch_construct_count.argtypes = [] + + prediction, jobs = build_batch_jobs(my_predbat, random.Random(99), 4) + if not prediction.kernel_handle: + print("ERROR: scratch reuse kernel context creation failed") + return True + + # One batch first, so any first-touch allocation is already paid before the count is taken + prediction_kernel.run_prediction_kernel_batch(prediction, jobs, 1) + before = lib.pk_scratch_construct_count() + for _ in range(batches): + if prediction_kernel.run_prediction_kernel_batch(prediction, jobs, 1) is None: + print("ERROR: scratch reuse batch call failed") + return True + grew = lib.pk_scratch_construct_count() - before + + if grew: + print("ERROR: {} batches built {} scratch buffers - they should be reused, not rebuilt per call".format(batches, grew)) + return True + print("Scratch reuse: {} batches on one thread built 0 further scratch buffers".format(batches)) + return False + + +def run_scratch_cross_context_tests(my_predbat, rounds=3): + """Check a reused scratch cannot leak between contexts of different sizes, returns True on failure. + + One scratch now serves every batch a thread ever runs, and Predbat builds a fresh context each + plan cycle - with a different n_steps whenever forecast_minutes changes. The buffers are only safe + to reuse because every field is fully rewritten before it is read: build_window_membership assigns + exactly n_steps entries and the clip helpers clear before pushing. If that ever stopped holding, a + large context followed by a small one would read the large one's tail. + + So the contexts are deliberately run largest-first and then interleaved, and each must keep + returning what it returned on its own. + """ + print("**** Running kernel scratch cross-context tests ****") + saved_forecast = my_predbat.forecast_minutes + try: + cases = [] + # Largest first: a later, smaller context is the one that would read a stale tail + for forecast_minutes in (48 * 60, 12 * 60): + my_predbat.forecast_minutes = forecast_minutes + prediction, jobs = build_batch_jobs(my_predbat, random.Random(forecast_minutes), 6) + if not prediction.kernel_handle: + print("ERROR: cross-context kernel context creation failed for {} minutes".format(forecast_minutes)) + return True + cases.append((forecast_minutes, prediction, jobs, build_batch_reference(prediction, jobs))) + + failed = False + for round_n in range(rounds): + for forecast_minutes, prediction, jobs, reference in cases: + batched = prediction_kernel.run_prediction_kernel_batch(prediction, jobs, 1) + if batched is None: + print("ERROR: cross-context batch call failed for {} minutes".format(forecast_minutes)) + return True + for index, (result_tuple, soc_range_min, soc_range_max) in enumerate(batched): + single, (expect_min, expect_max) = reference[index] + if result_tuple is None: + print("ERROR: round {} {} minutes job {} reported a non-zero status".format(round_n, forecast_minutes, index)) + failed = True + continue + for field, name in enumerate(RESULT_NAMES): + if result_tuple[field] != single[field]: + print("ERROR: round {} {} minutes job {} differs on {}: got {} want {}".format(round_n, forecast_minutes, index, name, result_tuple[field], single[field])) + failed = True + if soc_range_min != expect_min or soc_range_max != expect_max: + print("ERROR: round {} {} minutes job {} SoC range {} {} want {} {}".format(round_n, forecast_minutes, index, soc_range_min, soc_range_max, expect_min, expect_max)) + failed = True + if failed: + break + + if not failed: + print("Scratch cross-context: {} rounds interleaving {} and {} minute contexts, all identical".format(rounds, cases[0][0], cases[1][0])) + return failed + finally: + my_predbat.forecast_minutes = saved_forecast + + def run_kernel_parity_tests(my_predbat): """Compare the C++ prediction kernel against the Python engine, returns True on failure""" print("**** Running kernel parity tests ****") @@ -1145,6 +1239,10 @@ def run_kernel_parity_tests(my_predbat): failed |= run_batch_parity_tests(my_predbat) if not failed: failed |= run_batch_window_variant_tests(my_predbat) + if not failed: + failed |= run_scratch_reuse_tests(my_predbat) + if not failed: + failed |= run_scratch_cross_context_tests(my_predbat) finally: restore_scenario_state(my_predbat, state) From cb7ccbb81c79d4aab39d89b253612454c5f3bd5c Mon Sep 17 00:00:00 2001 From: Trefor Southwell Date: Sun, 16 Aug 2026 09:46:35 +0100 Subject: [PATCH 3/7] perf(kernel): keep a persistent worker pool instead of threads per batch pk_run_batch built and joined a fresh std::vector on every call. Measured over one benchmark plan that was 201,545 thread creations costing 1.5s against 3.1s of simulation, which is why threading was worth only 1.6% - the creation was cancelling what the parallelism won. Workers now park on a condition variable for the life of the process, and each has its own flag and condvar so a batch wakes exactly the lanes it needs. Broadcasting instead cost most of the win: a six-job batch woke all fifteen workers, ~250,000 wasted wakeups per plan, and measured 1.3% against 3.7% for targeted wakes. The calling thread takes lane 0 itself, so a six-job batch wakes five. Also gives each thread one scratch instead of one per call. That is a no-op on its own (26.291s vs 26.344s, inside noise - the allocator never left its thread cache) but the parked workers need it. 20-scenario benchmark, best of 3: 26.33s serial, 24.71s at 6 threads - 6.1%, on top of the batching work. All 20 scenarios byte-identical at every thread count, in both the normal regime and one with each job made eight times dearer. threads: auto stays at the core count. A cap looked right on a fast machine, where the curve peaks below it, but in the kernel-heavy regime the curve stops turning over - capping at 4 would cost 10.7% there against 1.3% for no cap at all. resolve_batch_threads carries the numbers. No ABI or parity bump: results are unchanged, so an older binary still loads and runs correctly. All six shipped binaries rebuilt. Co-Authored-By: Claude Opus 5 (1M context) --- .cspell/custom-dictionary-workspace.txt | 6 + apps/predbat/plan.py | 26 ++- apps/predbat/prediction_kernel.cpp | 209 ++++++++++++++++- apps/predbat/prediction_kernel_lib_aarch64.so | Bin 247216 -> 253216 bytes apps/predbat/prediction_kernel_lib_armv7l.so | Bin 197728 -> 203136 bytes .../prediction_kernel_lib_darwin_arm64.so | Bin 304200 -> 306984 bytes .../prediction_kernel_lib_darwin_x86_64.so | Bin 268934 -> 275650 bytes apps/predbat/prediction_kernel_lib_i686.so | Bin 228908 -> 234528 bytes apps/predbat/prediction_kernel_lib_x86_64.so | Bin 257112 -> 262584 bytes apps/predbat/tests/test_kernel_parity.py | 215 ++++++++++++++++++ apps/predbat/tests/test_prediction_batch.py | 34 +++ .../2026-08-16-kernel-thread-pool-design.md | 51 ++++- 12 files changed, 523 insertions(+), 18 deletions(-) diff --git a/.cspell/custom-dictionary-workspace.txt b/.cspell/custom-dictionary-workspace.txt index 6ef384d4b..d5ff0f1ef 100644 --- a/.cspell/custom-dictionary-workspace.txt +++ b/.cspell/custom-dictionary-workspace.txt @@ -25,6 +25,7 @@ armhf armv ASHP asyncio +atfork authoriser autodocstring autoflake @@ -380,6 +381,7 @@ preseeded prevs protobuf psum +pthread pvbat pvenergytotal pvlib @@ -537,10 +539,14 @@ venv Victron visibilitychange waf +waitpid Wallbox weblink welink Werror +WEXITSTATUS +WIFEXITED +WNOHANG workmode writeonly wrongsha diff --git a/apps/predbat/plan.py b/apps/predbat/plan.py index f3efa39f1..2c8c40ab6 100644 --- a/apps/predbat/plan.py +++ b/apps/predbat/plan.py @@ -35,6 +35,26 @@ PLAN_PASS_WINDOW_BUDGET = 8 +def resolve_batch_threads(threads, cpu_count_value): + """Map the threads setting onto how many kernel lanes one batch may use. + + 'auto' takes the core count and is deliberately not capped. On a fast machine the curve is very + flat and peaks slightly below the core count - measured on the 20-scenario benchmark, best of 3: + serial 26.33s, 4 threads 24.89s, 6 threads 24.71s, 8 threads 24.91s, 16 threads 25.04s - so a cap + looks attractive. But re-running with each job made eight times dearer, which is how a machine + where the kernel dominates behaves, the curve stops turning over entirely: 48.92s serial, 32.03s + at 4, 29.98s at 6, 29.85s at 8, 28.94s at 16. + + That makes the risk asymmetric. Capping at 4 costs 0.7% on the fast machine but 10.7% on the + kernel-heavy one, while not capping costs 1.3% at worst. The worst case for a low cap is far + worse than the worst case for none, so 'auto' is left alone and anyone who wants fewer lanes sets + threads: explicitly. + """ + if threads == "auto": + return max(cpu_count_value, 1) + return max(int(threads), 1) + + def slots_around(target_slots, slot_lengths): """ Return a list of slot lengths around the target slots @@ -1306,11 +1326,7 @@ def calculate_plan(self, recompute=True, debug_mode=False, publish=True): # The kernel spreads one batched fan-out across threads with the GIL released for the whole # call, so these are real cores - unlike a Python ThreadPool, which peaked at 1.15x on two # threads and then degraded below serial (perf/threadpool-prototype). - threads = self.get_arg("threads", "auto") - if threads == "auto": - self.prediction.batch_threads = cpu_count() - else: - self.prediction.batch_threads = max(int(threads), 1) + self.prediction.batch_threads = resolve_batch_threads(self.get_arg("threads", "auto"), cpu_count()) self.log("Prediction batch using {} kernel thread(s)".format(self.prediction.batch_threads)) kernel_message, kernel_is_warning = kernel_status_summary(self.prediction) self.log("{}Prediction kernel: {}".format("Warn: " if kernel_is_warning else "", kernel_message)) diff --git a/apps/predbat/prediction_kernel.cpp b/apps/predbat/prediction_kernel.cpp index a9ae9f24c..79048fff6 100644 --- a/apps/predbat/prediction_kernel.cpp +++ b/apps/predbat/prediction_kernel.cpp @@ -17,6 +17,7 @@ #include #include +#include #include #include #include @@ -29,6 +30,10 @@ #include #include +#if defined(__unix__) || defined(__APPLE__) +#include +#endif + #define PK_ABI_VERSION 3 #define PK_PARITY_REVISION 5 #define PK_MAX_CARS 4 @@ -307,6 +312,11 @@ struct PkBatchResult { // suite asserts this stops growing with the number of batches rather than trusting the reuse. std::atomic g_scratch_constructions{0}; +// Counts worker threads started for the life of the library, for pk_worker_thread_count(). Thread +// creation measured 7.5us each and a benchmark plan used to start 201,545 of them - 1.5s of a 26s +// plan, which is what the pool exists to stop paying. The suite asserts this stops growing. +std::atomic g_worker_threads_started{0}; + struct PkScratch { std::vector charge_member, export_member; std::vector clipped_start, clipped_end; @@ -1342,6 +1352,170 @@ static void run_batch_job(const ContextStore *c, const PkBatchJob &job, PkBatchR out.status = pk_run_one(c, &scenario, &out.result, job.soc_range_start_step, job.soc_range_end_step, &out.soc_range_min, &out.soc_range_max, scratch); } + +// A pool of worker threads that outlives every batch and every context. +// +// pk_run_batch used to build and join a fresh std::vector per call. Measured over one +// benchmark plan that was 201,545 thread creations costing 1.5s - against 3.1s of simulation, so the +// creation cost was cancelling most of what the parallelism won and threading measured 1.6% overall. +// Parking workers on a condition variable replaces each creation with a wake. +// +// Workers park until `generation` changes, then take lane `index` of a stride partition. The calling +// thread takes lane 0 itself, so a six-job batch wakes five workers rather than six and the caller +// does useful work instead of blocking. Nobody holds the mutex while simulating; run_batch_job only +// reads the shared const context and writes its own result slot, which is what made the previous +// per-call threading safe and is unchanged here. +class PkThreadPool { + public: + // Start workers until at least `want` exist. Grows, never shrinks. Returns how many there are. + int32_t reserve_workers(int32_t want) + { + std::lock_guard lock(mutex); + while (static_cast(workers.size()) < want) { + const int32_t lane = static_cast(workers.size()) + 1; // lane 0 is the caller + std::unique_ptr worker(new Worker()); + try { + worker->thread = std::thread(&PkThreadPool::worker_loop, this, lane, worker.get()); + } catch (const std::system_error &) { + // Out of thread resources - keep what we have and let the caller use fewer lanes. + break; + } + workers.push_back(std::move(worker)); + g_worker_threads_started.fetch_add(1, std::memory_order_relaxed); + } + return static_cast(workers.size()); + } + + // Run jobs[0..n_jobs) across `use` lanes, the calling thread taking lane 0. `use` must be at + // least 1 and no more than worker_count() + 1. + void run(const ContextStore *c, const PkBatchJob *jobs, int32_t n_jobs, PkBatchResult *results, int32_t use) + { + { + std::lock_guard lock(mutex); + cur_ctx = c; + cur_jobs = jobs; + cur_results = results; + cur_n_jobs = n_jobs; + cur_use = use; + outstanding = use - 1; + // Each worker has its own flag and its own condition variable, so exactly the lanes this + // batch needs are woken. Broadcasting instead would wake every worker in the pool - with + // a median batch of six jobs against sixteen workers that was ~250,000 wakeups per plan + // spent entirely on threads that immediately went back to sleep. + for (int32_t lane = 1; lane < use; lane++) { + workers[lane - 1]->has_work = true; + } + } + for (int32_t lane = 1; lane < use; lane++) { + workers[lane - 1]->ready.notify_one(); + } + + PkScratch &scratch = thread_scratch(); + for (int32_t i = 0; i < n_jobs; i += use) { + run_batch_job(c, jobs[i], results[i], scratch); + } + + std::unique_lock lock(mutex); + work_done.wait(lock, [this] { return outstanding == 0; }); + } + + private: + // One parked worker. The flag is written under the pool mutex before its condition variable is + // signalled, so a wake cannot be lost even if the worker has not re-parked yet. + struct Worker { + std::condition_variable ready; + bool has_work = false; + std::thread thread; + }; + + void worker_loop(int32_t lane, Worker *self) + { + std::unique_lock lock(mutex); + for (;;) { + self->ready.wait(lock, [self] { return self->has_work; }); + self->has_work = false; + const ContextStore *c = cur_ctx; + const PkBatchJob *jobs = cur_jobs; + PkBatchResult *results = cur_results; + const int32_t n_jobs = cur_n_jobs; + const int32_t use = cur_use; + lock.unlock(); + + PkScratch &scratch = thread_scratch(); + for (int32_t i = lane; i < n_jobs; i += use) { + run_batch_job(c, jobs[i], results[i], scratch); + } + + lock.lock(); + if (--outstanding == 0) { + work_done.notify_one(); + } + } + } + + std::mutex mutex; + std::condition_variable work_done; // the caller waits here + const ContextStore *cur_ctx = nullptr; + const PkBatchJob *cur_jobs = nullptr; + PkBatchResult *cur_results = nullptr; + int32_t cur_n_jobs = 0; + int32_t cur_use = 1; + int32_t outstanding = 0; + std::vector> workers; +}; + +// The pool is created on first threaded use and deliberately never destroyed: a static destructor +// running while CPython tears the process down risks a deadlock for no benefit, and the OS reclaims +// the threads at exit. +std::atomic g_pool{nullptr}; +std::mutex g_pool_create_mutex; +// Held for a whole batch. Python can enter pk_run_batch from two threads at once because ctypes +// releases the GIL, and one shared pool cannot serve two batches concurrently - its published job +// state would race. Nothing in predbat does this today; serialising is the safe answer if it ever does. +std::mutex g_dispatch_mutex; + +#if defined(__unix__) || defined(__APPLE__) +// Threads do not survive fork(), so a child would inherit a pool whose workers do not exist and hang +// waiting for them. The prepare/parent pair keep the dispatch mutex consistent across the fork, and +// the child drops the pool so its next batch builds a fresh one. Nothing here allocates or takes a +// new lock, which is what the child handler is allowed to do; the dead pool leaks in the child. +void pk_atfork_prepare() +{ + g_dispatch_mutex.lock(); +} + +void pk_atfork_parent() +{ + g_dispatch_mutex.unlock(); +} + +void pk_atfork_child() +{ + g_dispatch_mutex.unlock(); + g_pool.store(nullptr, std::memory_order_relaxed); +} +#endif + +// Fetch the pool, creating it on first use. +static PkThreadPool *pool_singleton() +{ + PkThreadPool *pool = g_pool.load(std::memory_order_acquire); + if (pool) { + return pool; + } + std::lock_guard lock(g_pool_create_mutex); + pool = g_pool.load(std::memory_order_relaxed); + if (!pool) { +#if defined(__unix__) || defined(__APPLE__) + static std::once_flag atfork_once; + std::call_once(atfork_once, [] { pthread_atfork(pk_atfork_prepare, pk_atfork_parent, pk_atfork_child); }); +#endif + pool = new PkThreadPool(); + g_pool.store(pool, std::memory_order_release); + } + return pool; +} + // Run n_jobs scenarios against one context in a single call. // // The context lookup and the Python/C boundary are paid once for a whole fan-out rather than once @@ -1363,20 +1537,20 @@ int32_t pk_run_batch(int64_t handle, const PkBatchJob *jobs, int32_t n_jobs, PkB // Scenarios are independent - each reads the shared const context and writes only its own result // slot - so they are split across threads by stride. if (n_threads > 1 && n_jobs > 1) { - const int32_t use = n_threads < n_jobs ? n_threads : n_jobs; - std::vector pool; - pool.reserve(use); - for (int32_t t = 0; t < use; t++) { - pool.emplace_back([c, jobs, results, n_jobs, use, t]() { - for (int32_t i = t; i < n_jobs; i += use) { - run_batch_job(c, jobs[i], results[i], thread_scratch()); - } - }); + std::lock_guard dispatch(g_dispatch_mutex); + int32_t use = n_threads < n_jobs ? n_threads : n_jobs; + PkThreadPool *pool = pool_singleton(); + // Clamp to the lanes that actually exist: reserve_workers stops early if the system refuses a + // thread, and a batch must never wait on a worker that was never started. + const int32_t lanes = pool->reserve_workers(use - 1) + 1; + if (use > lanes) { + use = lanes; } - for (auto &th : pool) { - th.join(); + if (use > 1) { + pool->run(c, jobs, n_jobs, results, use); + return 0; } - return 0; + // No workers available - fall through and run the batch inline. } for (int32_t i = 0; i < n_jobs; i++) { run_batch_job(c, jobs[i], results[i], thread_scratch()); @@ -1396,6 +1570,17 @@ int64_t pk_scratch_construct_count(void) } +// Test hook: how many worker threads have been started since the library was loaded. +// +// Batches used to build and join a fresh set of threads on every call. The suite asserts this count +// stops growing once the pool is warm, because a thread creation costs several microseconds against +// a median batch of six jobs - it was cancelling the parallelism it was there to provide. +int64_t pk_worker_thread_count(void) +{ + return g_worker_threads_started.load(std::memory_order_relaxed); +} + + // Test hook: sweep SoC densely and confirm the precomputed bucket boundaries give exactly the same // percent as the round_py path they replace. Returns the number of disagreements (0 = equivalent). int32_t pk_verify_soc_percent_table(double soc_max, int32_t samples) diff --git a/apps/predbat/prediction_kernel_lib_aarch64.so b/apps/predbat/prediction_kernel_lib_aarch64.so index 90e1fd8ed70e4aa093223ffebb0e00edd529de70..f7a88fefc6612ab7cc337a96e9e604a666d451bf 100755 GIT binary patch delta 86843 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 diff --git a/apps/predbat/prediction_kernel_lib_armv7l.so b/apps/predbat/prediction_kernel_lib_armv7l.so index 47f6f9624bc65544e941ceffe4f09651c261e2ad..a752ed5c93e757b2b4308d8df0782421cb927705 100755 GIT binary patch delta 53248 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 TXlNMh5onO=YB_?iX^;O44~*yL delta 48046 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 WTI$w8(Gv<&HB1B5d_mw;<^KX!|4e)U diff --git a/apps/predbat/prediction_kernel_lib_darwin_arm64.so b/apps/predbat/prediction_kernel_lib_darwin_arm64.so index e422a1c7c753323c33afbb80a7ff2660854629ee..33c3cb2a05296894c1d02081bc5abd20a6edc51e 100755 GIT binary patch delta 71218 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 ajvD{$@VNUPEZFz-t$`ojSH4Rg<^La`RA7ey delta 66106 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 Q;zb*+R;z~hEvU8r4`~wTkpKVy diff --git a/apps/predbat/prediction_kernel_lib_i686.so b/apps/predbat/prediction_kernel_lib_i686.so index b91da501480cf51e8842165e239d022ae04e7cfd..7d2d22d4b4b5fe762a22d0b1611f0f98d57c5874 100755 GIT binary patch delta 77212 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 delta 72327 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 diff --git a/apps/predbat/prediction_kernel_lib_x86_64.so b/apps/predbat/prediction_kernel_lib_x86_64.so index 609e1471e3da306f77b0cbe0504d525dc6c5bb1e..da0882744c4997f7b07c20fed1ebf803c9686509 100755 GIT binary patch delta 90906 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%0D~FNEdNMn zZgL|RxeeW2%X3}iF0}Y2KXs97(c87gvaa%WyyRZPXUfR!=;RIda+5pLo7FtYO>Rpo zuNyD8$t5M4w~FtSm0MHBRj%zW|0q9QX~F%l7L@C)Qq--2w43j^%YEdk<^qaa$z3YQ zp?t(c4wnb5P|@kP73@|Kxs%IbNH#C$c9ycgw4AStyrA;He7a1pp@$cAe#27E^pZPLlgsSsEl1mYWz~w!TWV{( zfvV+@>T(&r?JbANE!j+GF>}LmDBQvc6+nM>syY91Dt{LFo4IL4F-TwU%%j_3Jn zb-AxiNle7T@tHqyNva|HmC~LTx`FsCfANzmQK+8J_{kykY8Knq zk$ckISv;bS+>a{H;=k&EOvX$Os0;Vdb0)8<3-|DH25aiUJ#3r7ZLp@58_lrbLk3)s z@uZ$ypI#<&d4JiReoo>be>j8o$-K#5?nWP`tInXqG}RfbnXXPpW9rL}PSdBWPDSaI zx@ZWQ#w+W?#r>VcB^sc9Y7!464WKs9+v|!IS^tIu$}ylu6fXA|DBoJIba>O88Nx1+JF+_mcPcB-A$V%}o4< z?e1(MJrY5y2*9ws-SKW2)|APUCI)i61VUdOXtIMTK8+)boy<9UlnE#vvK zNcYBZM02FEalBNdE^+)sq*I!_fDh)#duqP#zm8_mxj=wMccvtKpB4Xld7At`Q}tQs7WN86~%( zoFVMg3Ukk}Aw0j8T#ecc;UleNJ?$IJy4G^tQVRxygCe8fW}pS1Uq~&f;$Xhs8p@e4 zfb&~JIZq8@|7f{4#Sh}2qUAc|Fo4fR%UfvrK%US>UQSO2u*;8-&C&rJ`y=!&U;tGe@+(gfd0I`t^5bgjODTIAgY*H-qjA>z1N5H+R5{2ct4)k zUS3V-`*Q6Lay6R?{gnWGRDbT<0q8yPD^eZg3Kb9a!XizI)n zb(Q;p>@lb5gL->n_e8btxvuANxn>Yd*nbN>? zVHg|w$z5xlK#@RkH=`6d0HKUHoR(->gtoA71Inkt>=Y|kx9tkl2z`q+rnN&jGFI;E z{Y(-qiv#Hp`;;tGV>8V#d|x9fHXh6uV`Xm|FqGfN!ZA6zv3q~Hn$=#EpXHJR5CHCL z&jABu|5lX|nwlDR5W)%y6=5n)<6>;AS|A|CIL5o>4#Y@>D*ahmE?C3bxLjHLj&aT3A3n<4}(!YDWV$jTX|#Qta9gij{h6`su18G7LQ5-S z-F|W6!6W339VfiQ;ewR#ow~sAjq#phCq|btF3a?wH%48kcNevMqpnf-&bYg#iAp|h ziNj&Irb^MoEYm(@idQ2wkr5$uXI*bDGg9`Y-J^_QBW0~bAAjHuqvSQxNd7QN?pyZW z8__6gcIv4#lV$n?Ii}A&zUAZ75xJa47K~0g*Nm4NAgphx`V_;sGNyAac)@ttr{d!l zqHlfh;jP(IVb4WybsHa731*zN@a^ z?~eZu>DFe_Gd0|Q0!+ZGB^xHluKq3xdl`uV7LcI9DZK?;5N zS*};AQb~Z~#sP72qA2$X<7<;;&*rkgL-V<|1x{J9Md5sKlC-nxwbT`*dU$;y@{W2c z+Fx)4_*f`6or2J8^9t@Z1>U&XbDlFrF4MB(Ou>Vbau)%b$im@7^Elta0Yo85pMq9J zdn*0i__ps~M~pS0{BnxyTKu=*ynIvbhHRgJrN%Cq4GD5(8W+m@kaA+YT*0w5Fkog` zu-pqP;bSI+@!oj3VnV9Y%kb=wzzlUi6I)olfe>l%NkI}ed$bhtK7-<%LK4qghRqrc z?E-&~O~X(x_g+ZiH!02|PZYe@4?hakTa9J#jE7sI{6oQq44~nPr+OD4PJ~S_{Xv z1D`~SDb+AJ%Tz)5dWiD|_RECW#QmT8FB!!pP&2Lo54}|$>WW^0H<7;@`3a^jYC%PG z)e;w-;SvCWzF5tzpg3Y=UJJnfo45sZFCM_}@g@p09x7{=D!<#+Oly%T9549$&I{_+ z5|pnuQ-sklGt?3SOHjlNhM*HcT2X#RE&tBX>E+0^`WHVf3;3y|@^c#r8Z zGASbIs|zkGg>6EqBJ`KBsq_0(*!q~y{Bf#0DZw-ogrGJg_GkUu1m%f~Tk7J5A@Cu3 z5tB0p2#R5v;eCa$E~%+SyrkTqVX|na4ufJzx|F73?kEa#?46xfN*BdqnRj$M%Gch zf=43(8iE=Nta@;vxknY%4XP$GwtwNoB-!2BqG*pxsti>B$h(u|I<{BEbyq1>gOq-6BZjMRsMX7KVtD>^Ib1UGmFaSw7SkJw$>xLN zRFt`VG%|1q`@6zM8pgT`chm(pWF-DD!V+Ohu;|bPagUh(gHj0*X0q&ub4gQ^Wmg*+ z8VyA-HR83&vUh1$I4uZcRC3z5IJ4{U=c~zbD7}{1V}{(zrkt$GD3)i=kZVW*ymy9N zzGQ%!D_l(tzB@y1UZq$9@NgG{!QTfi0p9aaBaztct*>Zl|3*r&X*joz%dE89= z+QCU)I#UkuZ9Ao)?kJci>c*oI>iX4H>WW{R0%_CXhD@{MIyU%5Tlw#(={~N-7?Y;TM~v6p8s=Sj4w2G26c zS@cUi{&6n0{4`xSX|BApMwzh+&k#od%oJVfgTA0ko2n~anow6MHcdlnn#?`tVefBc zXWlhWUR&c+d_h%LMGQ_usw!23kidU*fwl^1^hRom;l%l}N2p5=V5C^4>-43ID;5Pq zO7ZxqkkEdAg$E0j&@Equ&}ToD5D7wge0RR=n-E%9rMFt;5^%xx+$u^H@f&!e?X5^n z8?d*cns$L2r+CPP^}W^l)71K{)cSqR^@oW1{r_2C+)-(qwLlJ#q)1L*h)5y4GT&b) zkMf;43-%dj19KjOC*k7#$N7MteAD(?;74!O1KAl?J!kRcMRE|XgFm!LUgESEleptu!#RO|i{)y?+KHn6oVr-PUu?(>JSXs!C30QI<**}NA4{C-%~D=CU8!h1 zzC>P16x4=emSQd4t&MToQV}ryJXjF~I7zFfh__2kd58bdOj}WukP-m?gDQhq4Yfv4VU5dZ z;%Hk@z`u zU2i4&i7Ce-7i(Cn!-W-&hzf#MZgb@STA2Ste9m*4QxCHDbU|btz=!f-O!O<=(MXl;71cZRbim}1U+sdmjt1Pl`3=PI; zK=s_6ur*7iP`JMeUW!7r@=z3Fv9qEO{gh@KnT8@Y4RBWs$5k<&lwwI~l=RV2GZV86 zT#H?ga9*@dUQxrNr{GjjY^>;()BMs3#a>9z@)QserZ@wsX)1SHkEOxkFrKy^d(BB< z{MUMUXVl5=1tcDpQ<#b^rI0x9sF0{sRwYprsma$(03HhqtL##%SgBR6IP&EUSZ%Kl zP2DK}NqC*`*GAbtAvmU>g&sVQ!X~7qUtN_J>M zU%6+%!n1A#G;LJ`Cl#TZ6A(57;Y=Yy`={E7|2d6d~rKfDI@GwB5@-PCaX|TP*!{r|fs=UP@VCHF2T&d!U zM3L{FLWGMdLVpm0^j6uL<-4#Dp~Ef}qq&N)OkfE4jx5BOuOj%U2*E%okZ)8W&JYzx zQgLS4ZAA_kG>)aygF(y?(*FqnGzHR7Q6yN~rDRCcYJx5w1*r)F0;y(Oaoe}@OAlBCfSmf5 z@81PeRK8C){I4k=j3)sP5QRBd$K>bx{0KNfM0gfC*-A!BfglLvq$zMS0VDjxDLVyj zC}2wguTkJS0)`kYa^@>=RRI?haH0Zx3%Iy|M<}qHfUO1GQ-K{@V8u7UMr1@Q86^Y) z2F@ZUSb<5vSpQq()K=inn573mB`tD175I&S?F6h<;HLtHnp@;pDDZs&!(c6PUSYkE z?{i(i*f)X%6!>Cugwg{XL`Jrfaatfa3OG%He;05m0q<1cg8~-!>*lOc;N1eoz(N8F zyjj3v&6Jao3Oqr; z?gI8y;86nh5U^H(2MM^GfGrfbw}8tF_!Sl^&;bE^3iz%9C;TWfyhKK}lF?GY-U3cj z;AR4@AmE(}+)%(31-wRq>j>CK!1EQjs(>pAI8lMU1zcIcBNW(8z=+i#0RboYIEoBk zkrAyRln`)L0S7BE3AmboYb)^QaKP0C?5V(S1YASFS_OV8;F@VQ?3cOjs z^#z=$z-tBEK)@puc$t6$1l;p0+Ryh{C^7;?Mzn%3Tfhwk9IU|81dK%;B%r_(1l(A_ zo(eolz(E4mD)1lyHxaOf0{0fM2ncgtVW|xr5OA=7?|#9LP{0w0j1Z9_wlnj6S_-(C zfYTJXnSetDyc4i-#b zH64S6qT^4v2=Nz?%oE_d`|ex*Z~-qh!@{MBzx~3s;7{12_{%=eE#J%K96ikhU{OlF6Zl!<_i__i zYhk%ys#8MhLABxa=5(Jq%`m4|%;{ru`re!tJEYcgHm8-$X?=6r+?;kWr?KXAj5(d5 zrU@3Q=8W~`be}oRFsE0{>0@*H-kcUYY-YfmRx+pc&1rLU+QFR0n$t1nbcT|`g{GP_ z)|=CP<}|~cUNNVS&FOn{TI`6K0drc(oYps|&CO{Ca~f+-$C%R@B1QWaspgFJ=5(Jq z%`m4|%;{ru`re!tJ8EXYoK`ZY_04H>bK1e2#+uVH=5z*9AE7F#=8W~`be}oRFsG7n z%dtRF3(}>; zUB1GA3KYH|eQL|gM1Fx`6{Ik%>&SN~Fr9dB5R%y%e{ybUh(CwL8R*=@?Yl77LJT&r zn7y5U%$Mss-ZjH_&1kj#RPy<y}&ta!+$^Co^)et-?frWa(;Ckk^p!{f#q1 SBP2`D5(~|EI9G%rE%$%OJx{~{ diff --git a/apps/predbat/tests/test_kernel_parity.py b/apps/predbat/tests/test_kernel_parity.py index 8bb0b4e3c..d16a6485c 100644 --- a/apps/predbat/tests/test_kernel_parity.py +++ b/apps/predbat/tests/test_kernel_parity.py @@ -26,7 +26,11 @@ import gc import os import random +import signal import subprocess +import sys +import threading +import time import prediction_kernel from const import PV_SCENARIO_NOMINAL, PV_SCENARIO_PV10, PV_SCENARIO_PV90 @@ -1218,6 +1222,209 @@ def run_scratch_cross_context_tests(my_predbat, rounds=3): my_predbat.forecast_minutes = saved_forecast +def run_worker_reuse_tests(my_predbat, batches=10, n_threads=4): + """Check threaded batches reuse parked workers instead of starting new ones, returns True on failure. + + A benchmark plan issues ~25,000 threaded batch calls with a median of six jobs each. Starting a + thread per lane per call measured 201,545 threads and 1.5s of a 26s plan - more than the + parallelism was returning, which is why threading was worth 1.6% before the pool. The kernel + exposes pk_worker_thread_count for this: once warm, the count must stop growing with the number of + batches. + """ + print("**** Running kernel worker reuse tests ****") + lib = prediction_kernel.KERNEL_LIB + if not lib or not hasattr(lib, "pk_worker_thread_count"): + print("SKIP: kernel does not expose pk_worker_thread_count") + return False + + lib.pk_worker_thread_count.restype = ctypes.c_int64 + lib.pk_worker_thread_count.argtypes = [] + + prediction, jobs = build_batch_jobs(my_predbat, random.Random(1234), 8) + if not prediction.kernel_handle: + print("ERROR: worker reuse kernel context creation failed") + return True + + # Warm first, so the pool has grown to n_threads before the count is taken + prediction_kernel.run_prediction_kernel_batch(prediction, jobs, n_threads) + before = lib.pk_worker_thread_count() + for _ in range(batches): + if prediction_kernel.run_prediction_kernel_batch(prediction, jobs, n_threads) is None: + print("ERROR: worker reuse batch call failed") + return True + grew = lib.pk_worker_thread_count() - before + + if grew: + print("ERROR: {} batches at {} threads started {} more workers - they should be reused, not restarted per call".format(batches, n_threads, grew)) + return True + print("Worker reuse: {} batches at {} threads started 0 further workers".format(batches, n_threads)) + return False + + +def compare_batch_to_reference(label, batched, reference): + """Compare a batch's results against a per-job pk_run reference, returns True on failure""" + failed = False + for index, (result_tuple, soc_range_min, soc_range_max) in enumerate(batched): + single, (expect_min, expect_max) = reference[index] + if result_tuple is None: + print("ERROR: {} job {} reported a non-zero status".format(label, index)) + failed = True + continue + for field, name in enumerate(RESULT_NAMES): + if result_tuple[field] != single[field]: + print("ERROR: {} job {} differs on {}: got {} want {}".format(label, index, name, result_tuple[field], single[field])) + failed = True + if soc_range_min != expect_min or soc_range_max != expect_max: + print("ERROR: {} job {} SoC range {} {} want {} {}".format(label, index, soc_range_min, soc_range_max, expect_min, expect_max)) + failed = True + return failed + + +def run_pool_lane_tests(my_predbat): + """Check lane allocation across batch and pool sizes, returns True on failure. + + The pool is sized by the largest thread count it has been asked for and never shrinks, so most + batches use fewer lanes than there are workers - the median batch is six jobs against a pool built + for more. Idle workers must sit out without touching the completion count, and a batch must never + wait on a lane that was never dispatched. These combinations walk a batch smaller than the pool, + the pool growing, the pool being asked for less than it has, and the single-job and single-thread + bypasses. + """ + print("**** Running kernel pool lane tests ****") + prediction, jobs = build_batch_jobs(my_predbat, random.Random(2468), 8) + if not prediction.kernel_handle: + print("ERROR: pool lane kernel context creation failed") + return True + reference = build_batch_reference(prediction, jobs) + + failed = False + for n_threads, n_jobs in ((16, 3), (8, 8), (2, 8), (16, 8), (4, 1), (1, 8), (3, 8)): + subset = jobs[:n_jobs] + batched = prediction_kernel.run_prediction_kernel_batch(prediction, subset, n_threads) + if batched is None: + print("ERROR: pool lane batch failed at {} threads {} jobs".format(n_threads, n_jobs)) + return True + failed |= compare_batch_to_reference("threads={} jobs={}".format(n_threads, n_jobs), batched, reference[:n_jobs]) + + if not failed: + print("Pool lanes: 7 thread/job combinations all bit-identical to pk_run") + return failed + + +def run_pool_concurrency_tests(my_predbat, rounds=400, n_threads=8): + """Check two Python threads can dispatch batches at once, returns True on failure. + + ctypes releases the GIL, so predbat could enter pk_run_batch from two threads simultaneously. One + shared pool cannot serve two batches at once - the published job pointers would race - so dispatch + is serialised by a mutex. Nothing does this today, which is why it needs a test rather than an + assumption: each thread checks its own job set against its own reference, so a crossed batch shows + up as wrong values, not just a crash. + + The round count is load-bearing and was chosen by mutation, not taste. With the dispatch mutex + deleted, 25 rounds over 4 lanes passes happily - the GIL keeps the two callers from overlapping + often enough for the race to land - while 400 rounds over 8 lanes deadlocks within seconds and is + caught by the join timeout below. The healthy case costs no measurable time either way, so do not + trim these numbers to make the suite look faster. + """ + print("**** Running kernel pool concurrency tests ****") + sets = [] + for seed in (11, 22): + prediction, jobs = build_batch_jobs(my_predbat, random.Random(seed), 6) + if not prediction.kernel_handle: + print("ERROR: pool concurrency kernel context creation failed") + return True + sets.append((prediction, jobs, build_batch_reference(prediction, jobs))) + + errors = [] + + def hammer(label, prediction, jobs, reference): + """Run many batches on one context and record any mismatch against its own reference""" + for _ in range(rounds): + batched = prediction_kernel.run_prediction_kernel_batch(prediction, jobs, n_threads) + if batched is None: + errors.append("{}: batch call failed".format(label)) + return + if compare_batch_to_reference(label, batched, reference): + errors.append("{}: result mismatch".format(label)) + return + + workers = [threading.Thread(target=hammer, args=("concurrent-{}".format(n), prediction, jobs, reference)) for n, (prediction, jobs, reference) in enumerate(sets)] + for worker in workers: + worker.start() + for worker in workers: + worker.join(timeout=120) + for worker in workers: + if worker.is_alive(): + print("ERROR: concurrent dispatch did not finish within 120s - suspect a deadlock") + return True + + if errors: + for error in errors: + print("ERROR: {}".format(error)) + return True + print("Pool concurrency: 2 threads x {} batches, all bit-identical to pk_run".format(rounds)) + return False + + +def run_pool_fork_tests(my_predbat, n_threads=4, timeout_s=60): + """Check a batch still runs in a forked child, returns True on failure. + + Threads do not survive fork(), so a child inherits a pool whose workers do not exist. Without the + pthread_atfork handler that drops the pool, the child's first batch waits forever on lanes that + will never report - a hang, not a crash, which is why this test kills the child on a deadline and + treats the timeout as the failure rather than waiting on it. + """ + print("**** Running kernel pool fork tests ****") + if not hasattr(os, "fork"): + print("SKIP: platform has no fork()") + return False + + prediction, jobs = build_batch_jobs(my_predbat, random.Random(3690), 6) + if not prediction.kernel_handle: + print("ERROR: pool fork kernel context creation failed") + return True + reference = build_batch_reference(prediction, jobs) + + # Warm the pool in the parent, so the child inherits one whose workers are gone + if prediction_kernel.run_prediction_kernel_batch(prediction, jobs, n_threads) is None: + print("ERROR: pool fork parent warm-up batch failed") + return True + + sys.stdout.flush() + sys.stderr.flush() + pid = os.fork() + if pid == 0: + # Child: os._exit throughout, so the parent's buffers are never flushed twice + try: + batched = prediction_kernel.run_prediction_kernel_batch(prediction, jobs, n_threads) + if batched is None: + os._exit(3) + os._exit(1 if compare_batch_to_reference("fork-child", batched, reference) else 0) + except BaseException: + os._exit(2) + + deadline = time.time() + timeout_s + status = None + while time.time() < deadline: + waited, raw_status = os.waitpid(pid, os.WNOHANG) + if waited == pid: + status = raw_status + break + time.sleep(0.05) + + if status is None: + os.kill(pid, signal.SIGKILL) + os.waitpid(pid, 0) + print("ERROR: forked child did not finish within {}s - the inherited pool deadlocked".format(timeout_s)) + return True + if not os.WIFEXITED(status) or os.WEXITSTATUS(status) != 0: + print("ERROR: forked child exited with status {} (1 = mismatch, 2 = exception, 3 = batch failed)".format(status)) + return True + + print("Pool fork: a batch in a forked child matched pk_run") + return False + + def run_kernel_parity_tests(my_predbat): """Compare the C++ prediction kernel against the Python engine, returns True on failure""" print("**** Running kernel parity tests ****") @@ -1243,6 +1450,14 @@ def run_kernel_parity_tests(my_predbat): failed |= run_scratch_reuse_tests(my_predbat) if not failed: failed |= run_scratch_cross_context_tests(my_predbat) + if not failed: + failed |= run_worker_reuse_tests(my_predbat) + if not failed: + failed |= run_pool_lane_tests(my_predbat) + if not failed: + failed |= run_pool_concurrency_tests(my_predbat) + if not failed: + failed |= run_pool_fork_tests(my_predbat) finally: restore_scenario_state(my_predbat, state) diff --git a/apps/predbat/tests/test_prediction_batch.py b/apps/predbat/tests/test_prediction_batch.py index 36bcb3184..3bfd2046b 100644 --- a/apps/predbat/tests/test_prediction_batch.py +++ b/apps/predbat/tests/test_prediction_batch.py @@ -24,6 +24,7 @@ import prediction_batch from const import PREDICT_STEP, PV_SCENARIO_NOMINAL, PV_SCENARIO_PV10 +from plan import resolve_batch_threads from prediction import Prediction from prediction_kernel import create_kernel_context from tests.test_kernel_parity import apply_random_scenario, kernel_available, make_step_data, make_windows, restore_scenario_state, snapshot_scenario_state @@ -511,9 +512,42 @@ def test_batch_results_match_their_own_job(my_predbat): return failed +def test_batch_thread_count_resolution(): + """Check how the threads setting maps onto kernel lanes, returns True on failure. + + 'auto' takes the core count uncapped. A cap was measured and rejected: on a fast machine the + curve is flat and peaks slightly below the core count, but with each job made eight times dearer + - how a machine where the kernel dominates behaves - it stops turning over, and a cap of 4 then + costs 10.7% against 1.3% for no cap at all. The zero and one cases both mean serial, which is what + annual.py and the benchmark harness rely on. + """ + print("**** Running batch thread count resolution tests ****") + failed = False + cases = [ + ("auto", 2, 2, "auto follows the core count"), + ("auto", 16, 16, "auto is not capped"), + ("auto", 64, 64, "auto is not capped on a large machine either"), + ("auto", 0, 1, "a nonsense core count still leaves one usable lane"), + (0, 32, 1, "0 means serial"), + (1, 32, 1, "1 means serial"), + (2, 32, 2, "an explicit value is honoured"), + (12, 32, 12, "an explicit value above the core count is honoured"), + ] + for threads, cores, expected, why in cases: + got = resolve_batch_threads(threads, cores) + if got != expected: + print("ERROR: threads={} cores={} gave {} lanes, expected {} ({})".format(threads, cores, got, expected, why)) + failed = True + + if not failed: + print("Batch thread count resolution tests passed") + return failed + + def run_prediction_batch_tests(my_predbat): """Run every batched prediction test, returns True on failure""" failed = test_export_trial_does_not_mutate_caller_window(my_predbat) + failed |= test_batch_thread_count_resolution() failed |= test_batch_state_exists_without_a_base(my_predbat) available, required_failure = kernel_available() diff --git a/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md b/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md index aeb752cef..7c4d3986b 100644 --- a/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md +++ b/docs/superpowers/specs/2026-08-16-kernel-thread-pool-design.md @@ -1,6 +1,9 @@ # Persistent scratch and thread pool in the prediction kernel -**Status:** design, approved in conversation, not yet implemented. +**Status:** implemented. Three things below were changed by measurement during implementation and are +recorded in place: stage 1 is a no-op on its own, broadcasting to wake workers was the wrong choice, +and the `threads: auto` cap this design would have added was measured and rejected. See "What +measurement changed" at the end. **Branch:** `perf/kernel-thread-pool`, stacked on `perf/kernel-batch-abi` (PR #4540). Neither `pk_run_batch` nor `PkScratch` exists on `main` — both arrive with that PR — so this work cannot be @@ -216,3 +219,49 @@ anything resembling a 16x. - `apps/predbat/tests/test_kernel_parity.py`: the six tests above. - All six shipped binaries rebuilt with `build_kernel_cross.sh` and confirmed to load. - No change to any Python module. + +## What measurement changed + +Three parts of the design above did not survive contact with a benchmark. They are left in place so +the reasoning can be compared against what actually happened. + +**Stage 1 is a no-op on its own.** Removing ~25,000 allocations of ~70KB per plan changed nothing: +26.291s before, 26.344s after, interleaved best of 3 against ~1.8% run-to-run spread. The premise was +a misreading of the kernel's own comment, which recorded the allocator being the bottleneck under +four threads contending — a different problem from one thread repeatedly allocating and freeing the +same-sized block, which never leaves the allocator's thread cache. Stage 1 is kept only because the +pool's parked workers need per-thread scratch, and because its two tests are worth having. + +**Broadcasting to wake workers cost most of the win.** The design says "broadcasts on `work_ready`". +Built that way the pool was worth 1.3% (25.833s → 25.489s), because a six-job batch woke all fifteen +workers and eleven of them went straight back to sleep — roughly 250,000 wasted wakeups per plan. +Giving each worker its own flag and condition variable, so exactly the needed lanes wake, took it to +3.7% (26.008s → 25.056s). The shipped code does that; the single `work_ready` variable in the sketch +above does not exist. + +**The `threads: auto` cap was measured and rejected.** With the pool in place the fast-machine curve +peaks below the core count — serial 26.33s, 4 threads 24.89s, 6 threads 24.71s, 8 threads 24.91s, +16 threads 25.04s — which argues for capping `auto`. Re-running with each job made eight times dearer, +which is how a machine where the kernel dominates behaves, the curve stops turning over: 48.92s +serial, 32.03s at 4, 29.98s at 6, 29.85s at 8, 28.94s at 16. Capping at 4 therefore costs 0.7% on a +fast machine but 10.7% on a kernel-heavy one, while not capping costs 1.3% at worst. `auto` is left +as the core count; `resolve_batch_threads` in `plan.py` carries the numbers. + +**Final result:** 26.33s serial → 24.71s at 6 threads on the 20-scenario benchmark, **6.1%**, on top +of the 35% the batching work delivered. All 20 scenarios byte-identical at every thread count, in +both the normal and the kernel-heavy regime. + +## What the tests found + +Every new test was mutation-checked, and two were not good enough on the first attempt: + +- The **fork** test earns its place. With the `pthread_atfork` handler removed the forked child + deadlocks on workers that no longer exist; the test kills it on a deadline and reports the timeout + rather than hanging the suite. +- The **concurrency** test initially did not bite. With the dispatch mutex deleted, 25 rounds over 4 + lanes passed happily — the GIL keeps two callers from overlapping often enough for the race to + land. At 400 rounds over 8 lanes it deadlocks within seconds. The round count is therefore + load-bearing and the test says so. +- The **scratch cross-context** test cannot fail before its change, since without reuse there is + nothing to leak; it was verified by relaxing `build_window_membership`'s `assign` to skip shrinking, + which makes it fail immediately. From dbc604f7d3be7c9713c06893140c4f7977c50203 Mon Sep 17 00:00:00 2001 From: Trefor Southwell Date: Sun, 16 Aug 2026 09:57:45 +0100 Subject: [PATCH 4/7] test(kernel): skip the pool tests when the binary predates pk_run_batch The batch and pool tests call run_prediction_kernel_batch, which returns None when the loaded binary has no pk_run_batch. Four of them treated that as a failure rather than a skip, so running against an older binary reported errors instead of degrading the way the product does. Co-Authored-By: Claude Opus 5 (1M context) --- apps/predbat/tests/test_kernel_parity.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/apps/predbat/tests/test_kernel_parity.py b/apps/predbat/tests/test_kernel_parity.py index d16a6485c..bdcd49025 100644 --- a/apps/predbat/tests/test_kernel_parity.py +++ b/apps/predbat/tests/test_kernel_parity.py @@ -1180,6 +1180,10 @@ def run_scratch_cross_context_tests(my_predbat, rounds=3): returning what it returned on its own. """ print("**** Running kernel scratch cross-context tests ****") + if not prediction_kernel.KERNEL_HAS_BATCH: + print("SKIP: kernel does not expose pk_run_batch") + return False + saved_forecast = my_predbat.forecast_minutes try: cases = [] @@ -1291,6 +1295,10 @@ def run_pool_lane_tests(my_predbat): bypasses. """ print("**** Running kernel pool lane tests ****") + if not prediction_kernel.KERNEL_HAS_BATCH: + print("SKIP: kernel does not expose pk_run_batch") + return False + prediction, jobs = build_batch_jobs(my_predbat, random.Random(2468), 8) if not prediction.kernel_handle: print("ERROR: pool lane kernel context creation failed") @@ -1327,6 +1335,10 @@ def run_pool_concurrency_tests(my_predbat, rounds=400, n_threads=8): trim these numbers to make the suite look faster. """ print("**** Running kernel pool concurrency tests ****") + if not prediction_kernel.KERNEL_HAS_BATCH: + print("SKIP: kernel does not expose pk_run_batch") + return False + sets = [] for seed in (11, 22): prediction, jobs = build_batch_jobs(my_predbat, random.Random(seed), 6) @@ -1375,6 +1387,10 @@ def run_pool_fork_tests(my_predbat, n_threads=4, timeout_s=60): treats the timeout as the failure rather than waiting on it. """ print("**** Running kernel pool fork tests ****") + if not prediction_kernel.KERNEL_HAS_BATCH: + print("SKIP: kernel does not expose pk_run_batch") + return False + if not hasattr(os, "fork"): print("SKIP: platform has no fork()") return False From fe4cbbd5a8d20c0caaed3ec8a852794c91ca8951 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 16 Aug 2026 15:12:45 +0000 Subject: [PATCH 5/7] chore: update prediction kernel binaries for all platforms --- apps/predbat/prediction_kernel_lib_aarch64.so | Bin 253216 -> 253200 bytes apps/predbat/prediction_kernel_lib_armv7l.so | Bin 203136 -> 203120 bytes .../prediction_kernel_lib_darwin_arm64.so | Bin 306984 -> 306984 bytes .../prediction_kernel_lib_darwin_x86_64.so | Bin 275650 -> 275650 bytes apps/predbat/prediction_kernel_lib_i686.so | Bin 234528 -> 234508 bytes apps/predbat/prediction_kernel_lib_x86_64.so | Bin 262584 -> 262568 bytes 6 files changed, 0 insertions(+), 0 deletions(-) diff --git a/apps/predbat/prediction_kernel_lib_aarch64.so b/apps/predbat/prediction_kernel_lib_aarch64.so index 55fcd4208c425684cc965f1b760ed8a441804674..eda553983b4d496fbbdd4783e419f4527d34d321 100755 GIT binary patch delta 89 zcmZ3mi+=(TX)p#fYPM=JwrVnM)nxvDMLjtuF)v-AEVZaOGe1wk$WYHv&w#-vGcP-} n$V$P-#|0|1J@P8EJLC3w*O-;q7&WFJyu)nH=rR509cFa^OMxBg delta 107 zcmbQRi+{l`{s|h435}YqnvAWQOj|XXzhANR$j?npDoQO^NX|*jOIIjMEh^5;&r>im z)HBqxVDQPz%T6t_Qh=-S@o|C5ZFj%Q?9RA-!Zl_EHb$%I8}BfiGe%8+d52jY0N9x% AumAu6 diff --git a/apps/predbat/prediction_kernel_lib_armv7l.so b/apps/predbat/prediction_kernel_lib_armv7l.so index 0769b9f9cb93ce86345fee21fcdcc29b28943925..b26eda510a186c9c80e7a3a22e70eec5fd3d45ee 100755 GIT binary patch delta 114 zcmZqJ%=2Lr&jbZVfkwqvMaEV|rmc$1`NHbSIf;4c3T3H9#hLke3Py%{hI$4JKACyh zsYO-_K0Yo`q3tJynd=$1yNNPiV`kKtE-T5b%(!E^qa?Gs#1CO+22n-^IDjz$T{9Y) delta 132 zcmeyciKk&R&jbZVg+|3zMaEV|rmc$1`NEbS`MIe{MXBWq$vKI6=?Z13Ma7xlwFOh%#ScX0)2lE6J?Pcxt+#B(u5%mk2Y1 KC?f+Lz?cAIh#+zR diff --git a/apps/predbat/prediction_kernel_lib_darwin_arm64.so b/apps/predbat/prediction_kernel_lib_darwin_arm64.so index 5ca2534041caf3729306e3ab6376ac0cb1b2ed3f..0431deb3d5a40fa85d8ced7e1702afbb2db22ce9 100755 GIT binary patch delta 24532 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 N*{~ugqGQ0o) delta 24913 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 I4weiZ0GC%J6#xJL delta 115 zcmX@~QsB@_fe9jv4jVLffDAF>5kz7ns0&g_%)f`qRnG$`V)lm>K>vAOItj2>>sk9MJ#( delta 125 zcmeBK!M9)q-vkB57mbRoij1v_Oj{M1yZbCX@^e#@ic-rJl5-OC(iO^5i;6Sz^AwB> z^$hha7<@AGvQvw!6yU0Sd|aS%+b{PqYcg*C)z5s5nbB(c#mUUd63_aW8U8aM03(zM E092nOq5uE@ diff --git a/apps/predbat/prediction_kernel_lib_x86_64.so b/apps/predbat/prediction_kernel_lib_x86_64.so index 109ea4c99eda598e84205bedb86a4153304b3330..9cb9287e0b45d5d5689b5354b68a43ab6eabdf96 100755 GIT binary patch delta 85 zcmV-b0IL7EgAk~L5RfPV=z%GPDFKBk0<|dvkNKCu`2!OaFaS(xZfj+7Iv`9;L?ALT rE-@}JxAFM{M*)}a^aBRBJo^J21_3CS;q(I+mv8|DAOYZ)kpToJB>o+- delta 117 zcmZ3{EU=?lV1fqYk4DW_O~zJDrmdRH{XZ=|@^e#@ic-rJl5-OC(iO^5i;6Sz^AwB> z^$hha7<@AGvQvw!6yU0Sd|aS%+wcEmc4wUa;R`d%cAekMGHi@i(;t3e7N4HL$fCgb KX?i0gi#h;^swiFn From f463985bb2597aecf2d101f135e467add3f91202 Mon Sep 17 00:00:00 2001 From: Trefor Southwell Date: Sun, 16 Aug 2026 16:16:28 +0100 Subject: [PATCH 6/7] fix(kernel): include explicitly The pool catches std::system_error when the system refuses a thread. libc++ pulls that declaration in through , libstdc++ does not, so the file built on macOS and failed on GCC with a parse error at the catch clause. Caught by CI, which builds natively with g++; neither the local clang build nor the zig cross-build sees it, since both use libc++. Co-Authored-By: Claude Opus 5 (1M context) --- apps/predbat/prediction_kernel.cpp | 3 +++ apps/predbat/prediction_kernel_lib_aarch64.so | Bin 253200 -> 253216 bytes apps/predbat/prediction_kernel_lib_armv7l.so | Bin 203120 -> 203136 bytes .../prediction_kernel_lib_darwin_arm64.so | Bin 306984 -> 306984 bytes .../prediction_kernel_lib_darwin_x86_64.so | Bin 275650 -> 275650 bytes apps/predbat/prediction_kernel_lib_i686.so | Bin 234508 -> 234528 bytes apps/predbat/prediction_kernel_lib_x86_64.so | Bin 262568 -> 262584 bytes 7 files changed, 3 insertions(+) diff --git a/apps/predbat/prediction_kernel.cpp b/apps/predbat/prediction_kernel.cpp index f363367ca..0be4dd4f8 100644 --- a/apps/predbat/prediction_kernel.cpp +++ b/apps/predbat/prediction_kernel.cpp @@ -27,6 +27,9 @@ #include #include #include +// std::system_error, thrown when the system refuses a thread. libc++ pulls this in through , +// libstdc++ does not, so leaving it implicit builds on macOS and fails on GCC. +#include #include #include diff --git a/apps/predbat/prediction_kernel_lib_aarch64.so b/apps/predbat/prediction_kernel_lib_aarch64.so index eda553983b4d496fbbdd4783e419f4527d34d321..55fcd4208c425684cc965f1b760ed8a441804674 100755 GIT binary patch delta 107 zcmbQRi+{l`{s|h435}YqnvAWQOj|XXzhANR$j?npDoQO^NX|*jOIIjMEh^5;&r>im z)HBqxVDQPz%T6t_Qh=-S@o|C5ZFj%Q?9RA-!Zl_EHb$%I8}BfiGe%8+d52jY0N9x% AumAu6 delta 89 zcmZ3mi+=(TX)p#fYPM=JwrVnM)nxvDMLjtuF)v-AEVZaOGe1wk$WYHv&w#-vGcP-} n$V$P-#|0|1J@P8EJLC3w*O-;q7&WFJyu)nH=rR509cFa^OMxBg diff --git a/apps/predbat/prediction_kernel_lib_armv7l.so b/apps/predbat/prediction_kernel_lib_armv7l.so index b26eda510a186c9c80e7a3a22e70eec5fd3d45ee..0769b9f9cb93ce86345fee21fcdcc29b28943925 100755 GIT binary patch delta 132 zcmeyciKk&R&jbZVg+|3zMaEV|rmc$1`NEbS`MIe{MXBWq$vKI6=?Z13Ma7xlwFOh%#ScX0)2lE6J?Pcxt+#B(u5%mk2Y1 KC?f+Lz?cAIh#+zR delta 114 zcmZqJ%=2Lr&jbZVfkwqvMaEV|rmc$1`NHbSIf;4c3T3H9#hLke3Py%{hI$4JKACyh zsYO-_K0Yo`q3tJynd=$1yNNPiV`kKtE-T5b%(!E^qa?Gs#1CO+22n-^IDjz$T{9Y) diff --git a/apps/predbat/prediction_kernel_lib_darwin_arm64.so b/apps/predbat/prediction_kernel_lib_darwin_arm64.so index 0431deb3d5a40fa85d8ced7e1702afbb2db22ce9..5ca2534041caf3729306e3ab6376ac0cb1b2ed3f 100755 GIT binary patch delta 24913 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 N*{~ugqGQ0o) diff --git a/apps/predbat/prediction_kernel_lib_darwin_x86_64.so b/apps/predbat/prediction_kernel_lib_darwin_x86_64.so index 7300ca9bd6ac95374661e119b6a8a4c813d7b3fc..38b08ed606eeb68d5dc119243f0fb28914728499 100755 GIT binary patch delta 115 zcmX@~QsB@_fe9jv4jVwvT7#JjgmtIG4u8) I4weiZ0GC%J6#xJL diff --git a/apps/predbat/prediction_kernel_lib_i686.so b/apps/predbat/prediction_kernel_lib_i686.so index 05939aabcc9d8babdef862e46b0561031436f42b..db62edc513e7b58f48110cfabf7f3f38da105887 100755 GIT binary patch delta 125 zcmeBK!M9)q-vkB57mbRoij1v_Oj{M1yZbCX@^e#@ic-rJl5-OC(iO^5i;6Sz^AwB> z^$hha7<@AGvQvw!6yU0Sd|aS%+b{PqYcg*C)z5s5nbB(c#mUUd63_aW8U8aM03(zM E092nOq5uE@ delta 107 zcmZ3mg0E)<-vkB5D~*b+ij1v_Oj{M1yZh9Wa}x8?70ObJiZk=`6pRe@4D}2cd@}R0 tQ;Vz=e0*G>LffDAF>5kz7ns0&g_%)f`qRnG$`V)lm>K>vAOItj2>>sk9MJ#( diff --git a/apps/predbat/prediction_kernel_lib_x86_64.so b/apps/predbat/prediction_kernel_lib_x86_64.so index 9cb9287e0b45d5d5689b5354b68a43ab6eabdf96..109ea4c99eda598e84205bedb86a4153304b3330 100755 GIT binary patch delta 117 zcmZ3{EU=?lV1fqYk4DW_O~zJDrmdRH{XZ=|@^e#@ic-rJl5-OC(iO^5i;6Sz^AwB> z^$hha7<@AGvQvw!6yU0Sd|aS%+wcEmc4wUa;R`d%cAekMGHi@i(;t3e7N4HL$fCgb KX?i0gi#h;^swiFn delta 85 zcmV-b0IL7EgAk~L5RfPV=z%GPDFKBk0<|dvkNKCu`2!OaFaS(xZfj+7Iv`9;L?ALT rE-@}JxAFM{M*)}a^aBRBJo^J21_3CS;q(I+mv8|DAOYZ)kpToJB>o+- From e45f7e9cfce3aa03ee35f61f2254d062b5ee83db Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 16 Aug 2026 15:17:37 +0000 Subject: [PATCH 7/7] chore: update prediction kernel binaries for all platforms --- apps/predbat/prediction_kernel_lib_aarch64.so | Bin 253216 -> 253200 bytes apps/predbat/prediction_kernel_lib_armv7l.so | Bin 203136 -> 203120 bytes .../prediction_kernel_lib_darwin_arm64.so | Bin 306984 -> 306984 bytes .../prediction_kernel_lib_darwin_x86_64.so | Bin 275650 -> 275650 bytes apps/predbat/prediction_kernel_lib_i686.so | Bin 234528 -> 234508 bytes apps/predbat/prediction_kernel_lib_x86_64.so | Bin 262584 -> 262568 bytes 6 files changed, 0 insertions(+), 0 deletions(-) diff --git a/apps/predbat/prediction_kernel_lib_aarch64.so b/apps/predbat/prediction_kernel_lib_aarch64.so index 55fcd4208c425684cc965f1b760ed8a441804674..eda553983b4d496fbbdd4783e419f4527d34d321 100755 GIT binary patch delta 89 zcmZ3mi+=(TX)p#fYPM=JwrVnM)nxvDMLjtuF)v-AEVZaOGe1wk$WYHv&w#-vGcP-} n$V$P-#|0|1J@P8EJLC3w*O-;q7&WFJyu)nH=rR509cFa^OMxBg delta 107 zcmbQRi+{l`{s|h435}YqnvAWQOj|XXzhANR$j?npDoQO^NX|*jOIIjMEh^5;&r>im z)HBqxVDQPz%T6t_Qh=-S@o|C5ZFj%Q?9RA-!Zl_EHb$%I8}BfiGe%8+d52jY0N9x% AumAu6 diff --git a/apps/predbat/prediction_kernel_lib_armv7l.so b/apps/predbat/prediction_kernel_lib_armv7l.so index 0769b9f9cb93ce86345fee21fcdcc29b28943925..b26eda510a186c9c80e7a3a22e70eec5fd3d45ee 100755 GIT binary patch delta 114 zcmZqJ%=2Lr&jbZVfkwqvMaEV|rmc$1`NHbSIf;4c3T3H9#hLke3Py%{hI$4JKACyh zsYO-_K0Yo`q3tJynd=$1yNNPiV`kKtE-T5b%(!E^qa?Gs#1CO+22n-^IDjz$T{9Y) delta 132 zcmeyciKk&R&jbZVg+|3zMaEV|rmc$1`NEbS`MIe{MXBWq$vKI6=?Z13Ma7xlwFOh%#ScX0)2lE6J?Pcxt+#B(u5%mk2Y1 KC?f+Lz?cAIh#+zR diff --git a/apps/predbat/prediction_kernel_lib_darwin_arm64.so b/apps/predbat/prediction_kernel_lib_darwin_arm64.so index 5ca2534041caf3729306e3ab6376ac0cb1b2ed3f..0431deb3d5a40fa85d8ced7e1702afbb2db22ce9 100755 GIT binary patch delta 24532 zcmaKU0bEr@_W#`bo&|~uhKYp=hN*>#N{Xe4h6#mDSB$=Y`HH(nFI#_3X)^FOBf}{6ec^gO~44%lD-heD?=inJ+CK`>+M}^|;GyK%enX z4e|?etUqz?Ttjf2WBp0sw7i#IiFZ)#p*g*Lt@4N8N!|ZWs&&ono8GZ{=v9BSg7%L* zY<)IbU;nKYxc{;aYfC?C>i$Ev{pv+l!~O>@w$XC+{-*=%ZI)}rxb?~&@(*97ihWOB z{m17Ok&qKR)@MO2xY2DiF*X^@?jq8sN7Iq&5kIp@~e%(Hg?dG$(TW2T7 z{?U%zt>dxXKCkZP)6eW77k2x;ZWT{<+nOE52|nLx+R2DET5wjZ@awp<|<;#?+1?E4gR2MM)Wt_}6*e+Fj6dm7S ztMGS}ngpx{Mgv3NRVo3P2TTSw0Mmg%$CSzjh7Gnw#4c zwCy4X9}EIm-`iHcG1x_Yu$4fszSs-Ew0_vlz${!izz0|dYy;B4c6q7SEt&&3q>f^~Lfdrgvuzch;-geO$}{^Y73xrq zPMxg%%%29hAIs}$Y;ecvj4Y-=_=62EzN`+sj968ar|q43A9s>WmjmhHtc2ZrxszgS==c(d>}V0eFYP=k(vbYW@iuj0L4 z!KAxbIVyqaz@$SM5HRmG3}^rjw!Lla4cI92psV(W-ZY90}j<-?4cjA>wulWMqt)|a48;wj?Um1 z16#T<5MVT>nllI-7zNC>ER_!ou`N{(tOdH9!PqqpH~_nV`M?q<9DwECxZ(}PG3<#s zi!IFrCV>a_wp0bMppT{6fsuW=J{A~$83ra?`Ql0lUJ0c58ek20tsnDxKg*@sQIOY< z3yOfDA(;IaTPhtGFo4TLfOX)`fy{k@&S5y_mog6kMuB$)GWQyU4FM0qJ%T!>dqv$a z6`vTyJO${y9D8!83xW7hbD5=zfC(YE<^$V-KEsuRZZ5IIReVh-wirBil%-mM9YAWh z3m7s2=X)4)=NL<+fL8&jz7|*k-ad}`8DKMb^91H?E_?_diPPv>E@%c8fz#crex!=e zn}!aqz(}vht^}R|Qp3(D>`L(1>6YpQ7T;j0NmpX7%;5TPU=Dax4D&c(4R{l<9T;&V zm%F0yAv_ev444i~xQQ#0fi>VExSh5GOM%oe-CjdSsrdSt7|)&&thH) z>;k9T@T9A7HY9L)9 zjV%L?ScxqIMn1@nNx;Bx<)Cja>ESBA5tEg+xCK~;^0YkWS-?*4s8!74fRnDqp~fX(1Z>u_C|fIR?A z09F@qeI2k2{K#X>TY=5st&cNTPhjpu;IuAg9$t*|KL-U7>$$+|NsJJ@66iA#SFjCS zo&bymPb^_h-{Hz8s`z}(yd2ny`q)zD>A>)7l;fE2CSVSD{bsIj0M>w)ZINACy9LLT z9G=2lxE80$Hg;?UmVhU1w^Spr^I4pZldwg*aY%sq&s(Yr7*d5}3akf)PR12;59)!= z7f=tZ0Ja08UPS$M%FzZ)2j;n|;eZc8d*J{)3=ExuW4;d#K=l&pffc}ZU~~=YBjLXv z^}ys>OirNl0A}@6Tv~xqz~onO%z<97@`m^W>#4j>_7JcO+*NZ>b_pGv8;P0}P*zL-co?X27flF3$(nfM+%_F9AAlz&D;xFhJm8 zAk01k%m+WxjDBu#;adGESJVPKQPK7p^PtZWI0GX+i2z{L7hFyc4##GwczSN|k5=*Y z+>it;X~O`baW4V30qHp+AV$U0b3{6jo+E02^c>L%Yysl>qnsV|0VAUai|`v&d?b)K zJz&5R@`bkn({98-PFt!RnEeg=4|5=Och`J z6Z0})+Dz;T;kCe0@CM)!;NkyR%Ijtf^cS4}arn^u3m&M777!jV~s3CgB z!^jhgncF46Ow`jeU-=vi5ZDZ)XFmU1RXjcO#RB7iMYrOM3$PwY&wyu8PS1dNxQXuo zQv38Qm`&T>^*yq45g`dfL=4t9$?k$t@G^LtQP&_JbSH`qI2)CM_Y+{&mH!BD^B;GkGc|_ zI^Vt@jeI)ao?@lzLCJ6_&@+?mSyrIlN>Hy)C)+M`m$AT}VMXhg7q~rt1b8=eaIdA@ z>zsw?wMl0zL|B$SxX_+p<>?=Zh3M&v;Gg#+`^S<009~=j4zNn~!A152?;5F!)hG6$ zs(GR9>rKCeobgubh#r+<&+sn&4@bA_;9Yiz-kxG#<{kd?|5x@M%IsvNzgc4s*5TL_ z7|zU8`!80x-j#}-maacd#qjg>pvBk;$vSs2*s=Ww7u(A%l#WWnCi?1o(@4QtrCJqZh zgPwdBAVTL7lB6zkj!G##ejBRHl9Ed#Xc zjAf{c(|ZW2^=X12J!&~1M`tXDOPoGPkgR)W+PB#iG5Wf6d%P~ow7o2+-ib0)oy~-Q zl%9My2Hl|7+>OE}{psB(4AX;FV3TWZrLb#s`3l=<`Rko4P!*@YBq-9u?g1RpsRYe> zCqcXZ5@2`Tw*T@hd$47PEzys!x36;_#l%aMD%X$Qi)MY6>Sgz#I2H%D4aEg|(0v$d zpw74twWW9c5p*O_DKC8%#h6BbDLwJzs}cucQl#t0@3)`DzPmabJs0bHvoZW4{T{J4 z-FqcwOVC5VxzC7N{XwNYNI$UBz65h^<4Sv$-L+bOwbH)T^3jtYKmg7Rf;xSWV1zzP zkfSF*2x!r{1d;k6L8(6bAjX=YXXao~&3Yq2l>QW8r>v)uPwNqJnNlq}BNy%odJn-7 zeL5F2ynF)>sE!A8^FF(uPI?H3WQ0zA2q#C1=6YY6-ox~V4`FVF=^r0L7ma$d3k{X& zT!L7A(1lZLlK#4u0|)Vy8pxQ#JnO1&~H7A!Zv;OVVof$dR{*EMwQ-^ zkAMJungA1V4aO1pI`utXC-1YJx_S*}P@aBy4PsODX@H~VO`Jj{_S7B`p-SPB@d(P| z>ZPm}Wm)<(%DmNEyi>At@NPR$$E>w4#lc8jiwzIZd)A`+PJMPQ+Rf5e7ohtheQyB< zTBF}9Kw+NlQHUv-_df54yh7XQ-TFSa*v5xpccFV;yahir+~ZL|lAiu3+Gy8XA4U60 zpC$;>lh?U7FP8vkIl*ClcAY)Ju4>W0t+TK4o`mTcF;=Nkol%6^BYF=(ojzTJtqVN$ zoBp=Mp6s1KUgPL|$au`Y&Aa4l9!~?0=j+EXo)F#RarEh>=MdECodCPNgDz`hdz=Z! z&$4>d6PV-8-*IfCKJhHB`Wv6HhvO=CkgCpn|ND-ki{+SNTo`LR_26Y74-}&hf4#97 z`zHL1KC~QVzo5)J`De3l-0fYx9@leUJ##&_B3(bW9y`5Fe@v`F_kR*2E7Pe2IJ5xU zd5$j_ksC1IQru*`&e?$ZhU?1)_lA7D0d3&wTLPwZMhONQ;&h*;=h}H2J}yC@t@<>o z;CS^$K(x-?2>$^6-bQqdJJ%+#Qax{zJ;M>{e@;(HwUCYEei zIkCfrwGa!sSUiJD!SW1CCe{LWj(R937B%3U{&pGlN30CY-Fwhxur9-ri6sR{T{*Ej z!&-<14wN>7wt(dsmJEh%Pu+se%+WiyU=pV2v&4?*$xi_$>0E*eeUKnPpM46GJVIYx z=03492x|1sGVHSueYy-TX?oOF_pZy`in;>*@>U%3BUk8eN^k|nJW^h`$0q8@Ph*01 zhMv=}Eybo)KTX3QB^%m7tOg7ldNrTVVcSp?bQRoP_9&k9)0Oho8QaihsNO?Rs!wl2 z&uF{c&2kAQ>4W7ssT;55L*B}Vy#IC_@*+KIJNzqj?shohPPrXh(V~0o095Ol1jTye z4(yUj9sG$E9HBGjMO$r=LMn$$C@;phRa>;0r*s z-d=${(Ws9TWNN>ifG&b@Jz{U7yU{8t3DE}#s`YmSQF`RF_O;$wu{`V~8ul>#_-?yr zk96F|O7-?<-CoC^wXet3dC+r!2)*Drblasrc+MWK%U`seJ?OV^Ty>tqNE@_OiP}6p zwGt!E(}l$R_0dY~f?7Rr7p|@mdgU(EMeEmhVWT7Uz};{O(sOsC@gTi*H+sz09}^_$ z-p||D;^@Xa50?;KNKmhjK97CTsRvcTB|*=ra?gXERrVrWP`vlRrA^1|!7lOAxqHx2 zlzxk#T=#wfo<(}z3+O0aZ+`*d#rilE#_EwT0`m0A7qJcPdKUq9<%{UOTKBJZd(I@N z&}*tO(~1`B8~4~(=#FaJ2aTMqMt6C7%wBjT>m_?JhGe~qpj4lt!ZIDa4`cAvOZI{J z>g@#n`;YI#@%E;?7FnA1K5P&1Zs2DzRjJ2-;(j&zus!@DdY&K~F&5w1VfePK*N?Xc z;dlT2dk@>Qrfev;E_Bu6F^lY&V71_3!5Tq&93!L0FtQOtxb<+sNWoaaM8OonOu-z% z0!EiAk%Dr;D#2R8dcg+4X2CYWPC*sK1M(3J5DXCv6PzR%?M6ImCP+cDV7g$oV7_3n zV3}a0V2$8m!DE6=f~|rbf?a}M!5DB7cBMakfCUML3PuRJEAg+z;sYsZ871i$<%={7 z*$BZ%!6<#)atx>BhW^!Z3>w*7#eS`V9fF;Ll>H!U(lNGU%AdzIb8?p~h8DG3+lHIV%&@xpPZJjO|4M)_XK{*<8MxCK6*`jZ5XQiIr^ z5;+`q++&<1den%)>`w_Fj+@=vQ-6{WQb|GVPl+LpJL)k`@;|C`6#G*ih~uXA@zkH> ziBwk@`%}J%;|_R?lYEk@7Jtesaom``p8Au#lj<19{*-^>xLqFOBtNBECa`~-V3Q8^ z_0*rFvG7|t$5A?q``hd>PSRSc>w5O5^cKhY`FZM3(p?aEus@}}IIhrRoTSB6G}2*Y zlpZ5%(pEoD{YlzPO}df&DSJlNsaJZ8ldPIbyovoOyG9nGzw;O;SvOS{%l?#oBdga- zF7h-^$;zp=o7tbTb7cAYgvYqDS?pIXNLf6xCOy~RQ-6}(Q`rgZPgy>W`@mzIWC2wU zX9E=_1350Hzo-5rNvM(&*`Jby9QV4%I7ud|gt_cbNkxvEc(JGcB-yA+?_hsQI&$1z zk8zTeRC&qlPsvG+8#%yJf0DdZtqa+ol9(K~-D8|2IaNX``zHxD>45>B`r~9M9%&YH z9OXp0zx5vDBxkB>(%7GJryS=!&{KbsTU9l8Nt|GlUga@Pa36d~<#svll*c&9{i^aT_NN>$$1S+jQ-6{pRw4JXf2d%S zKJGCtT>K&gDaXwH%?>Srp5jDQp?qHDI1*Qo zHR<&p<3xO+Qdoqc(gmBe_XupZNHLVz?7D-}?4N9Qz0@BOY!FP;tI*t^Z?;G~l-C>F zK1n=y_&&62T@t`$|v!iNZxCzsqqXbm9Jv zdW;j{i;8`Z{Ye1BaZ^J*^(O)umGwURlTe1^4j?W@bTTTZfr}f=Pf&uSpCL0Rhv;Zj zR+BU*Sfa;_qG5buo&Tq<_D|TqLy+_~WJmNacif--=z(NvK_J{y_w>m+HuES@!uDXrZ3p9S&(EsWL;nCexn_C_*J$uuM(`$t42Ep z_?aJo8>P5e?;7p6&5yJ>WTed@%hrBj@Q(VHDM@n38ui35$7nxNXg#X}DKWJWB23zy7hHFup`WVTymgOiqL;u?Kwi%8eMi=`*PO~U&NqUNUzelF} zsE0$9Q&>kJ{^c)JPG{|N5Pmt^s_B2Vem&Z8DUutX65!iujN_snJ1%fKYqVdCW5B?c z1!!%-iqvIU>V*qdq-NryddXc4&jCFTe|aGqIfnoGx){gBu0yD*{ff%!{(T|(Yg~YT zM;3tByFDB5pN#fmAN(^5YOrp?%_qqM8;A+qJX(0D@C4!43r`kK$y>DNQt48#NF1_- z-y=L<_*&t`!m%2_-C>z3cRp&w1rK=2MBK! z9wNL$IQ{NK{$0Ya7w&Z_Pl?&W{e{zWGWiDyUryYGf1y%9Uv$YKLije}QNj-ij}uN; zFY-?k{-f|T;j}1`>a&DjCOl90Sa26P6iGp(IFt&XCA>m-hVW|P>x9<{-!A-!@I%5I zg}*1fMfhhnjz0~cT?*R8;f(NKg*#3AwG25 zFTx?2bKC4*>`&`|$etBW>w?Ip`EWfgP$D}fToxj!q~7j&m#SXC4m0|204<**yH7Z+ zU?TfkxGW%2k+_7=fMunVdPR6$4Es;^<$7AUME1FGS*WCz;<7oIPGDN;MAq&uP)e3o zscHSV0b0RCwn@0G)l#1cr!`z;z8A4SEzu&oSvakHBHJNcmSCx`iO<0n&{{0AK!0w4 z)_RfME?m}jsb7WD8ZWXP{n;OKYPWrPF(3S{RJ}CLF&GKu!Z^niKUxq)_R9dSF4xE7 zFdLfn&jitW;B3bbmr3hgb_qL~^xo~lO`5MlxJmbQ2sdfJ2~d*J84Y9cVQb*{8zu^>G@ftoBlu3}H7~Y(@6Aa9UhNwk(M2X^|CK zk6`Asc#Et`I4$ZTyJaZX(_$^MpM}$+Ewb{kCXnhme7s6>N z8QD9-xSp1tky^^4zyN)>~>u2Xp3ph02!8UFn51HQEKf3=Cs&}Y*++y zT5CjBFPs*{ku99a^|VTZ%(@1g?#Z;efvlVg@R3$SkWIn0f;g>;Ap2A}EovZpXcE`c zY6!9+IJL>2R#%W65>Bfu$mZc%L-n*sf~*VNeNU!k7GztdutOfc{EIe)fQwIPh(E2G00vPF6&d&Pr_+^3fZRXmHudsqrV?5DkMvc;sz4*&vP(E z^Yy@60j+xCt&aIFTG>c89oixHW>hiXBHTRpWAT8y-aMgAjA3pbqziQ9ePY?)s1IU=8x_Js zZhk$^!F{~N)#6}e3BL(9@`G_Rxj`dCz+wXT7PaZ)w>jL3phU;$F|?kE?2}nsON;f$ zGI58Y?Wbi*WD{mHPu7Krj#+-RYKd%4JQvsMQ;9f8;o5sHpjwY42-PuwU?X67a1Q$# zA;Tfz&`^!V69?uUW|Tv}~2^?nTUL6)9QY6gQuS*9ve!9T#9hJo8jM_R)|l zTHO9BXfbnIeoA&wc&(oM7wp^;z49-PZGN;glWf&e_J%Ah3AHskCJ9f}i9@+|Q3lu6 z=t8Qk*SnG&pF^!&I1kK6?;=RlM*%LQF-gke5Ti9&FWhKOP70@0uVj<&Wq+eJSs~nL zPM#BPv?phT8;!|T_qpR;zl%*$xB%a&xP!k6H{y~Xgd34b*!{AN;$JA-h)NC#H{y~X zgd34bR5r!Clrn0Pd))=LdCAMdjf~_QQ-3KBVEBVF0O2{pjeO*nF29c_Wp zjbx*MxY3X779OU(lW`d^GLfiUb~AF39N{TCCK=bIJiR&DF~w!XAv5#X+lWLS5pKjH z{}OIQA-z|zzY&K_5pF~xj|n$okavX}QHb|ycf3m(b;u$vP(}r^UAR$$d@kImLMA@U z12F23`-K}7$jicw8l-PN`y18A3^&Ku79;;~iGz`Wd?cJ!E0g7};Ra&0_d>_=V50*0 z_gXGCYLMUp=1#qNAs*t4=wnJD7aQ?MzHlP~`BJzMdklM&{f+1&Rk#s*Qh|22sdhwUBZnjqz4{PX!gt6ZM8_aQG;w1 zZd4)v6mHZZqt?6QZKd?e6pX{DK|bR0-&G-APjWv-9WqzAQGq-m+^9j`5^hu>12%BH zQGd)5Zd4#^nY*xXjd#Sq#KFiudY5nmM*cBHxRHT8CY;uoleGyq@{f@lIo`-XmI^m= zkhh6npf{yD`nins!*>(M7zxO9;YJFwNw|@GGzd4+kDi+2jRYiFxRH8j;YRZDK695c z+K=E;Zop_fmIyamkG;Z;=A-{+_BYy&S;CFRqfoffdVFsD@8X>{a0|ub_F}{x@$Lep z>cnA}a3kjUQn(Ry1V6X*-NKEU z<2T_(wJ~Wc`y2Jf1Hz4pqfxj~Yxq3P{zkPC1%5SkXyhBE;$UPN?+Q0^jo*Yv>f?7h zhKw=lj5oG%yGEt)i*TdX7+cQuNqS@&?mI@5F?~B18*#?{!dqycz}^yW#26RsV1FaZ zm?7MVGb)4|5yof2jTj@~8F&1&-&GmQxIh^dMy+t8#`sCNQDuZz@Bkw9$R)UZ7!iig zPA)cLj2nd;QAUAqBhEM}+=wy4pXGQX%6LGy5oa70ZbTYG@#_kX+CpVi8H>2!cXdXo zaHG1!MwBsrH`f~x#!BHv zj8QGzh%){y+=w%-d7k52ALrx0hWWzZRT=f-VAL6oDh@CzjXQ)JRmL{qMxD_p+^96X z_i%i;o_H6Irx9bkCdEdS@x5>(&Y1cFhZ%K7xp1S>I3wJsHR4}nf1}!{5^mHQt;}yx z%_7$btmXhC-^dgmzKM6t--H|4##!M;z7dXJUg)$g)+5ugT}G|(l@uG*#;|?tX4D%g z!i|dKHQ`3B@tbg?+L-(j#~bxVsc@sxXlCwGMy?T5!vRLNktf{9GxiHNGL3J9(`zxv zroPPaMwaoga3jxnOSq9~T=rM;#}(cPHP*Nb@I7P;H~58cBg`1QpF1!Djk&^&P@`Hn zy?%qtyO#ZpKx2|{Bh*+<+zH=SeKf=InjgJ8f~@{kj;qw0m*IkFbQ&=Sx!CA6@`M}R z#z(@9KBM0u_BT3>*}{!pqe{3DZ1jAM{f%HFg}F-^g~n6jV3Zmk3O9<4VTZW^die&~ z1Hz3`W1n!N*!WtwQEpuKI>#G@#shBdLbB>jZt$<-U?dxT-rxYE*|<}<(QX_NZZsTy z-johRqY)|GXg5{}HyVz^#OZb;uLV)Q_1u6FZ`>%{h&b|v8!^Wx!i{Ld?=6lu;*DtG zM#S-ya3j`e0H03hs!?t9_!~E1)El=7H!6*d!i`#^QFxjjc(-H7Y$M9p@isSO#2L-P zjYwnc5w164j5~!JQAU~Y99@WJ7Z_2-%A*`+#2Lqg8&SrDccj@SKAua38*#=~;W<*@ zF1$p0ufUZ`-hHAzf0vsv8jV56m>aFeUxXXY#>>L#T`6RK@3FtpYTP2+Xf`$oH`u<6+@Oym3Id5pneTJNwf+SjgrJmv^zKL&A-i<0s)p)Nxe<#b1OA z#TVSbYIgw%?Jw@H0|L8@qk?GbfvBw6_aM#3DV><(M_b z{l*rI;_Y9#mfq+>_K9$M;|tlh!UOaHM7!eJxj3?m!{q%g>Q>?M{uh-YT;BJh)(EHf z!jNqe-Yoo8;Wfe=g&!9FBlBC7(W+d0mIq)oEE9y6NW6JDYZlNQ}}I?@~QMn8?r$B z_DI}FZ=!@7Nlv9o?M@aK{I217SGdvgT-k#M zWHdkb2^XyngfCM6D{sK43z#?SiTTKPAJ#|nkqd9o-fQrSXOSKWaLMa)l;zF7iI(l& z_$k7(h0hgEuh$_<7f!FwA&mL$+5qy?%%65I7FSQ03c`3;vG_6uowb zEVd^Ps7Rk$gVU{E4}8QidTJeB#zQuu7uOn@QHpRQKiVnW$da0c2kOE{aMsehddTke z;b!QaJ!B2S<=s7M9Dd)WDNv=o*J7Wg>5*&k9fIEELspCppjvsOk2)yaXr4|B?+}es zU|;s9H~o;^B;07A(u5mr)EeRR;vcel=GbRa@U=J?G1f)+^_K=zti1~yuLaW!fykcm zldTZmAiP+6oW8Jtt)yXiD2d7%$@rv zj)1(C7CVB9u{Jl%9jtlRkd(>y)D^$!rO%p#}$aS!>s!rE!?dCzCn21_cX7RnkBqJ_?>R<%2Q^c zINlcIZqO_ke?+)hIR1q2dTHP};qqQD^@4DDua~M9ZWf%sE8HwR|GxnAx3+(gV}Ji5 z=bj)}`saHldtY(j%Yl98?klgo(zWNCId{zdQ4PHL;0gWaq{ADwd@}qWbzgV9f67|? zcQ@k6^SLoZuAJZ{c?%^fF0zqnx2-V=Rd*5%}tUHtONISJ`2V>8Fy z^~SkX8{fID^@(+#B&wed{pUYF+>`gcY8&~@fQZp8jn%gY>U(EqxZYhqH!9WtroT^k z=0NLRALjbJx%Scd9jALG&bZ*Ku30O#uRl0*d}D~~n=w6?zL0gr#@lYZd}!vN8I#vd z-F?fQFTWb~;D_<4*$Z-}efG=2#}B-D{S&7*54nBQ1;OX$ZMvxEi;q9Ex6jyJ7w^tK z^w-Rt)kjZU{_CN%qKCeU`0%-~6B*xsaNQjhXV$pZyzJ?HXRiSn)Ad5vzox&ES@=lA->&>u;{AO$tonQNgy&ArpL%o6 zs5?Jd5o_sn>&Lw}>Z7M_YIUu8a;5LUkH@{cHK1ef;zwpLxhg$iIeU(0K zbWP*t#1ljQUC=kVa74fHLAURYK0A1@e{;-=559QyhvlV<^CmfbYG2R$SLouG9-DA! N*{~ugqGQ0o) delta 24913 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 I4weiZ0GC%J6#xJL delta 115 zcmX@~QsB@_fe9jv4jVLffDAF>5kz7ns0&g_%)f`qRnG$`V)lm>K>vAOItj2>>sk9MJ#( delta 125 zcmeBK!M9)q-vkB57mbRoij1v_Oj{M1yZbCX@^e#@ic-rJl5-OC(iO^5i;6Sz^AwB> z^$hha7<@AGvQvw!6yU0Sd|aS%+b{PqYcg*C)z5s5nbB(c#mUUd63_aW8U8aM03(zM E092nOq5uE@ diff --git a/apps/predbat/prediction_kernel_lib_x86_64.so b/apps/predbat/prediction_kernel_lib_x86_64.so index 109ea4c99eda598e84205bedb86a4153304b3330..9cb9287e0b45d5d5689b5354b68a43ab6eabdf96 100755 GIT binary patch delta 85 zcmV-b0IL7EgAk~L5RfPV=z%GPDFKBk0<|dvkNKCu`2!OaFaS(xZfj+7Iv`9;L?ALT rE-@}JxAFM{M*)}a^aBRBJo^J21_3CS;q(I+mv8|DAOYZ)kpToJB>o+- delta 117 zcmZ3{EU=?lV1fqYk4DW_O~zJDrmdRH{XZ=|@^e#@ic-rJl5-OC(iO^5i;6Sz^AwB> z^$hha7<@AGvQvw!6yU0Sd|aS%+wcEmc4wUa;R`d%cAekMGHi@i(;t3e7N4HL$fCgb KX?i0gi#h;^swiFn