Minor CI fixes#12
Merged
matajoh merged 1 commit intomicrosoft:mainfrom May 5, 2026
Merged
Conversation
63c779f to
62c9f4f
Compare
Packaging - Ship examples/*.txt in the wheel (move out of examples/assets/, fix the package_data glob, update sketches.py loader paths). Windows / x86 - Add a windows-x86 (CPython 3.12) job to pr_gate.yml. - Fix MSVC volatile warnings in compat.h. - Provide working 64-bit atomics on 32-bit x86: emulate load/store/exchange/fetch_add via _InterlockedCompareExchange64 CAS loops where the Interlocked*64 intrinsics are unavailable. - sched.c: cast atomic args through (void *) to silence MSVC cast-qual warnings. Physical-CPU-aware worker sizing - New boc_physical_cpu_count() with Linux (sysfs + sched_getaffinity), macOS (sysctl hw.physicalcpu_max) and Windows (GetLogicalProcessorInformationEx) backends; exposed as bocpy._core.physical_cpu_count(). - WORKER_COUNT now defaults to physical_cpu_count() - 1, with a BOCPY_WORKERS env override and graceful fallback to sched_getaffinity / multiprocessing. Avoids HT/SMT oversubscription that hurts CPU-bound throughput. Benchmark - Use physical core count for default sweep values, the oversubscription warning and run metadata. - derive_sizes() biases toward more independent rings rather than more chains-per-ring so the chain-ring workload stops starving at higher worker counts. README - New "Scaling with cores" section with a Mermaid speedup chart (~7.5x at 8 workers on the chain-ring benchmark) and the exact reproduction command. Boids example - Add --scale for the rendered triangle size, show FPS alongside behavior/s, and print an average behavior/s summary on a successful recorded run. Misc - Drop the always-skipped TestStealSpuriousFailureStress placeholder in test_scheduler_steal.py. Signed-off-by: Matthew A Johnson <matjoh@microsoft.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.