Skip to content

Guarantees and reproducibility

Each of these is enforced by a test:

  • Nothing compiles at import: no numba or llvmlite JIT. The base is NumPy, SciPy and the pure-Python threadpoolctl, and the native kernels ship precompiled in the wheel.
  • Import completes in under 200 ms, output is deterministic (bit-identical), and the API is thread-safe.
  • Memory is bounded: the full n×n distance matrix is never materialised (blocked kNN), staying under 200 MB at 5000×1024.
  • Any output dimension is supported, 2-D and 3-D for visualisation and around 10-D for clustering. The codebase is fully type-checked under pyright strict.

Reproducibility

For a given input and seed, output is bit-identical across processes and machines in the same environment. Two things change it across different environments:

  • The native kernel against the numpy fallback. The wheels carry the kernel and use it by default; an unbuilt checkout falls back to numpy and differs.
  • fastumap[ann], which changes the neighbour graph above 16,384 points.

Both are properties of the environment. accelerator_active() and ann_available() report which paths a run used, so a stored projection can record how it was produced.

Next