quill-fastsort-parallel
Parallel 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.RustParallelRadixBackend probes for:
parallel_sort_i64 parallel_sort_u64 parallel_sort_i32
parallel_sort_u32 parallel_sort_f64 parallel_sort_f32
Each sorts a contiguous, writable numpy buffer of the matching dtype in place,
ascending. The kernel is quillcore::parallel_radix — 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_parallel-0.5.0.tar.gz.
File metadata
- Download URL: quill_fastsort_parallel-0.5.0.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34f77c0c78e03a1009743d28dcd3e3bf109c60443a68521bd1e284961a334182
|
|
| MD5 |
5180f1aa34a01072e612408b1610b7b5
|
|
| BLAKE2b-256 |
4cb13119d5d9944879d49a3eec6ce1f695e1059d37128fc05274d207a2ca8837
|
File details
Details for the file quill_fastsort_parallel-0.5.0-cp313-cp313-macosx_12_0_arm64.whl.
File metadata
- Download URL: quill_fastsort_parallel-0.5.0-cp313-cp313-macosx_12_0_arm64.whl
- Upload date:
- Size: 18.7 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 |
6a9427baa0d6039e01951d4d7b192ffa3d6794c8f15b04b740ff36fbf07074d7
|
|
| MD5 |
2ed43c48b4656fbe6d946b4526d18e66
|
|
| BLAKE2b-256 |
d9eb41deb8b010f4e9d5c878042841dca6b54afe7e941ebad49ac411110c1f0d
|