| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
A starting airspeed velocity (asv) benchmark suite covering the library's hot paths. Built as a scaffold: review, then move asv.conf.json and benchmarks/ to the repo root (next to pyproject.toml). _verify.py is a local sanity checker and does not need to ship.
asv.conf.json asv config, tuned for this repo (see caveats below).
JSONC: asv documents `//` comments and strips them in
its loader, so `.pre-commit-config.yaml` excludes this
one path from the strict `check-json` hook. asv also
accepts `asv.conf.jsonc`, which would need no exclude,
but asv is not a pinned dependency here and older
versions resolve only the `.json` name.
benchmarks/
__init__.py package marker + note on the dual-import shim
common.py shared, seeded data builders (called from setup, not timed)
scalar_access.py single-element get / extract / assign, hit vs miss
index_parse.py parse_index int fast lane vs numpy-int lane (index build)
small_ops.py ewise / apply / reduce on ~100-element objects (overhead)
large_kernels.py mxm / mxv / ewise / reduce on ~1e6 nnz (C-library bound)
conversions.py from_coo/to_coo, from_dense/to_dense, scipy interop
imports.py cold import + first-use timing (timeraw, fresh subprocess)
repr_bench.py repr / _repr_html_ for small and large objects
_verify.py standalone check: runs every benchmark once (not an asv file)
pip install asv
asv machine --yes # one-time: record machine info
asv run # benchmark the current commit
asv continuous main HEAD # compare a branch against main, flag regressions
asv publish && asv preview # build and serve the HTML report
asv run --bench scalar_access # run a subset by regexQuick correctness check without asv (runs each benchmark once):
python _verify.py| Back | FazBrowse Home | New Git URL |