Conversation
… explorers demo/ppstats_demo.ipynb tours the full capability story: kernel source inspection, side-by-side accuracy checks against scipy.stats using the documented tolerance models (absolute for ndtr-backed norm kernels), interpreted-vs-native agreement, gufunc broadcasting, ipywidgets distribution and performance explorers, and a static speedup summary that honestly includes the known loss cases (mean, norm_ppf). Ships as a pixi 'demo' feature in its own solve group (scipy, matplotlib, ipywidgets, jupyterlab; python pinned 3.14 to match the compiled extension ABI) so scipy stays out of the runtime and dev dependencies. Tasks: demo-build / demo-exec / demo. Headless execution verified via demo-exec; dev suite unchanged (198 passed).
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.
Summary
Adds
demo/ppstats_demo.ipynb, an executable tour of the full capability story:inspect.getsourceon real@guvectorize/@vectorizekernels: the source is plain typed Python.1e-12relative for direct-formula kernels on a fixed grid, a purely absolute2e-7check fornorm_cdf(ppspecial's ndtr bound is absolute), and the bench harness's1e-9allowance for random-data cancellation in the reductions (explicitly labeled as such).ppstats_nativeextension, asserted to agree at1e-13.(batch, n)reductions and loc/scale broadcasting contrasted with scipy'saxis=/broadcast calls.meanon long vectors,norm_ppf), with perf prose worded as commonly-observed-on-linux-64 rather than absolute claims.Environment
Ships as a pixi
demofeature in its own solve group (scipy, matplotlib, ipywidgets, jupyterlab, nbconvert; python pinned 3.14 to match the compiled extension ABI) — scipy stays out of[project].dependenciesand the dev feature, per the working rules. Default/dev lock entries are byte-identical to main. New tasks:demo-build,demo-exec(headless execution check),demo.Verification
pixi install -e demosolves; default/dev solves unchangedpixi run -e demo demo-build→ 27 ufuncs registeredpixi run -e demo demo-exec→ exit 0, zero error outputs (norm_cdf max abs error 9.6e-8 vs 2e-7 allowance)pixi run -e dev test→ 198 passed, unchanged profile.soare gitignored