quill-fastsort
Multi-threaded MSD-radix sort backend for quill-sort. Portable C++17 reimplementation of the original Windows-only compiled wheel, building natively on macOS (arm64/x86_64), Linux (x86_64/aarch64) and Windows.
Provides the entry points quill._backends.RustBackend (backend name
rust_voracious) probes for:
sort_i64 sort_f64
Each sorts a contiguous, writable numpy buffer of the matching dtype in place,
ascending. The kernel is quillcore::parallel_radix — the voracious-radix
equivalent: a top-byte MSD partition across a thread pool followed by an
in-bucket LSD radix, with no merge step.
- Never-lose: results are identical to
np.sorton NaN-free numeric data (verified exhaustively againstnp.sortacross dtypes, sizes and adversarial distributions). NaN is stripped by the Quill dispatcher before any kernel runs. - Speed: measured 3–11× over single-threaded
std::sortfor int64 on 8 cores (scales with core count and array size).
Build
pip install . # needs only a C++17 compiler
The sort kernels are header-only (src/quill_core.hpp, a synced copy of
companions/_core/quill_core.hpp — run companions/sync_core.sh after editing
the canonical core). No numpy headers or third-party libraries are required.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quill_fastsort-6.1.0.tar.gz.
File metadata
- Download URL: quill_fastsort-6.1.0.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b14975ac83292c3b6020b34a282ea2164070b96a18647c2d25bf0844bbe797f6
|
|
| MD5 |
0afdd85ff9bd459297e4835d43fd7e26
|
|
| BLAKE2b-256 |
6c6cc70755c33251fb63b81687165521b0fe16e8e73f630c4eb7d60b6a42e45e
|
File details
Details for the file quill_fastsort-6.1.0-cp313-cp313-macosx_12_0_arm64.whl.
File metadata
- Download URL: quill_fastsort-6.1.0-cp313-cp313-macosx_12_0_arm64.whl
- Upload date:
- Size: 12.0 kB
- Tags: CPython 3.13, macOS 12.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be9d8da0253ffdb095b6b4b834e6e8ec57240113a877a72315d1d6c0458f31b1
|
|
| MD5 |
4cdba6acc444114c6a364e9e44c756ed
|
|
| BLAKE2b-256 |
b62a616daa97aa622426a48f94d1b4f3b42c230142ffe11f5b946a59a378b5c0
|