Skip to main content

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.sort on NaN-free numeric data (verified exhaustively against np.sort across dtypes, sizes and adversarial distributions). NaN is stripped by the Quill dispatcher before any kernel runs.
  • Speed: measured 3–11× over single-threaded std::sort for 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

quill_fastsort_parallel-0.5.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quill_fastsort_parallel-0.5.0-cp313-cp313-macosx_12_0_arm64.whl (18.7 kB view details)

Uploaded CPython 3.13macOS 12.0+ ARM64

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

Hashes for quill_fastsort_parallel-0.5.0.tar.gz
Algorithm Hash digest
SHA256 34f77c0c78e03a1009743d28dcd3e3bf109c60443a68521bd1e284961a334182
MD5 5180f1aa34a01072e612408b1610b7b5
BLAKE2b-256 4cb13119d5d9944879d49a3eec6ce1f695e1059d37128fc05274d207a2ca8837

See more details on using hashes here.

File details

Details for the file quill_fastsort_parallel-0.5.0-cp313-cp313-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for quill_fastsort_parallel-0.5.0-cp313-cp313-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 6a9427baa0d6039e01951d4d7b192ffa3d6794c8f15b04b740ff36fbf07074d7
MD5 2ed43c48b4656fbe6d946b4526d18e66
BLAKE2b-256 d9eb41deb8b010f4e9d5c878042841dca6b54afe7e941ebad49ac411110c1f0d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 files

0.4.0

1 file

0.3.0

1 file

0.2.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page