GitHub / ashvardanian/stringzilla / commits
Up to 10x faster strings for C, C++, Python, Rust, Swift & Go, leveraging NEON, AVX2, AVX-512, SVE, & SWAR to accelerate search, hashing, sort, edit distances, and memory ops 🦖
| SHA | Message | Author | Date | Stats |
|---|---|---|---|---|
| 657f21c5 | Release: v5.1.1 [skip ci] | TinySemVer <t****r@a****m> | 14 days ago | |
| 1831ccb6 | Fix: Snapshot caller sequences before walking them | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 8637f386 | Make: Bound the compile workers by available memory | Ash Vardanian <1****n@u****m> | 14 days ago | |
| d0a002f2 | Make: Link the CUDA objects against the dynamic CRT | Ash Vardanian <1****n@u****m> | 14 days ago | |
| cdfa4cd4 | Fix: Cache Unicode data atomically for the parallel tests | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 8584d565 | Fix: Guard the device scope in NW and SW cross-products | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 16eede6c | Release: v5.1.0 [skip ci] | TinySemVer <t****r@a****m> | 14 days ago | |
| d6aa02e7 | Fix: Transpose the SHA256 message window in place | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 67965672 | Fix: Keep the Sha256s doctest off third-party imports | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 84bc9152 | Improve: Move SHA256 lane state by shuffle rather than gather | Ash Vardanian <1****n@u****m> | 14 days ago | |
| e8573df5 | Improve: Keep every SHA256 lane vectorized to its own end | Ash Vardanian <1****n@u****m> | 14 days ago | |
| f1995c24 | Chore: Drop the Ice Lake SHA256 tier | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 7382cfe0 | Fix: Keep the whole Ice Lake SHA256 path clear of wide registers | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 38309324 | Fix: Reseed tests without the hashing kernels | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 725300f9 | Fix: Spell GHASH carry-less products for MSVC | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 2eca82c5 | Fix: Keep the Ice Lake SHA256 block clear of ZMM | Ash Vardanian <1****n@u****m> | 14 days ago | |
| dcca5eb5 | Add: Batched HMAC-SHA256 for Rust | Ash Vardanian <1****n@u****m> | 14 days ago | |
| d2335f36 | Improve: Register Python types from one table | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 94748339 | Add: Batched SHA256 and HMAC bindings for Rust and Python | Ash Vardanian <1****n@u****m> | 14 days ago | |
| ff12ed3e | Add: Multi-state SHA-256 for batched hashing | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 128e8629 | Fix: Stop punning the SHA256 state through wider types | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 1106220a | Chore: Enforce sz_unused_ over bare (void) discards | Ash Vardanian <1****n@u****m> | 14 days ago | |
| 79d9a06e | Fix: Call platform intrinsics directly for ctz/clz/popcount in ISA kernels | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 41584d15 | Improve: Spell out the tag compare and the streaming spend path | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 681559d4 | Fix: Scrub the streaming state when a Rust encryptor drops | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 14d0f69a | Chore: Make SIMD vector dtypes explicit across every backend | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 26691dbc | Improve: Stop widening the scalar hash and cipher tiers | Ash Vardanian <1****n@u****m> | 15 days ago | |
| c437048e | Fix: Close the `evex512` version window at both ends | Ash Vardanian <1****n@u****m> | 15 days ago | |
| f0abf92c | Add: AES-256 through the C dispatch, Rust and Python | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 5e4a9c34 | Improve: Reach for the ISA where the cipher fell back to scalar C | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 96ef67ad | Improve: Write the AES rounds out instead of looping | Ash Vardanian <1****n@u****m> | 15 days ago | |
| a1e33d87 | Fix: Clamp duration histogram bins to the last slot | Ash Vardanian <1****n@u****m> | 15 days ago | |
| c5040538 | Add: AES-256 counter and Galois/counter modes | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 64f2dac0 | Add: Differential coverage for the byte-sum kernels | Ash Vardanian <1****n@u****m> | 15 days ago | |
| b35eb90a | Fix: Select the RISC-V crypto tier at compile time | Ash Vardanian <1****n@u****m> | 15 days ago | |
| 21693ac6 | Improve: Rebalance and retier the C++ test suite | Ash Vardanian <1****n@u****m> | 16 days ago | |
| c40b3de6 | Improve: Rebalance the Rust test suite and de-abbreviate its generics | Ash Vardanian <1****n@u****m> | 16 days ago | |
| c35bc1cc | Chore: Disambiguate test-suite assertions from libc assert | Ash Vardanian <1****n@u****m> | 16 days ago | |
| 027c0426 | Fix: Resume UTF-8 delimiter scans at the last emitted match | Ash Vardanian <1****n@u****m> | 16 days ago | |
| d6231a6b | Improve: Unify runtime asserts on sz_assert_ | Ash Vardanian <1****n@u****m> | 16 days ago | |
| 2b4b45c2 | Improve: Build the Rust types in `const` context | Ash Vardanian <1****n@u****m> | 16 days ago | |
| cb0f5139 | Fix: Keep the Haswell boundary drain inside its index buffer | Ash Vardanian <1****n@u****m> | 16 days ago | |
| 712c6ccf | Fix: Bound the Haswell LUT reads to their tables | Ash Vardanian <1****n@u****m> | 16 days ago | |
| a9a63433 | Fix: Write Unicode test caches atomically | Ash Vardanian <1****n@u****m> | 16 days ago | |
| 669d4129 | Release: v5.0.7 [skip ci] | TinySemVer <t****r@a****m> | 19 days ago | |
| 09d35568 | Improve: Report what the build is doing | Ash Vardanian <1****n@u****m> | 19 days ago | |
| a4b00bd3 | Fix: Serialize the Python object free-lists | Ash Vardanian <1****n@u****m> | 19 days ago | |
| 3c8c803a | Release: v5.0.6 [skip ci] | TinySemVer <t****r@a****m> | 20 days ago | |
| ba0ffa7d | Make: Give nvcc on Windows an MSVC environment | Ash Vardanian <1****n@u****m> | 20 days ago | |
| e9accb99 |
Make: Wheel tests race on free-threaded interpreters (#299)
Co-authored-by: Neil Schemenauer <6****e@u****m>, Ash Vardanian <1****n@u****m> |
Neil Schemenauer <n****b@a****m>
Committed by: GitHub <n****y@g****m> |
20 days ago | |
| 9adf85a5 |
Fix: Guard the reverse long-needle search against a loop-bound underflow
Co-authored-by: b7r6 <1****6@u****m>, b7r6 <b****t@g****m> |
Ash Vardanian <1****n@u****m> | 20 days ago | |
| 4f7f1314 | Make: Ship a pkg-config file for non-CMake consumers | Ash Vardanian <1****n@u****m> | 20 days ago | |
| 83e09597 | Make: Anchor the Rust crate and declare its C symbols | Ash Vardanian <1****n@u****m> | 20 days ago | |
| 67e89bfe | Make: Install StringZilla and StringZillas as CMake packages | Ash Vardanian <1****n@u****m> | 20 days ago | |
| 1e0a672b | Release: v5.0.5 [skip ci] | TinySemVer <t****r@a****m> | 21 days ago | |
| 8aeafe49 | Docs: Condense README tables into ASCII blocks | Ash Vardanian <1****n@u****m> | 21 days ago | |
| 119dabac | Make: Free-threaded StringZillas wheels and a Windows CUDA build | Ash Vardanian <1****n@u****m> | 21 days ago | |
| 7dca3cec | Improve: Expose codepoint counting and indexing to JS and Swift | Ash Vardanian <1****n@u****m> | 21 days ago | |
| e6ef0f39 | Release: v5.0.4 [skip ci] | TinySemVer <t****r@a****m> | 22 days ago | |
| 065c3c1d | Docs: Refresh the v5 performance table | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 8ef6be43 | Fix: Build CUDA-on-Arm wheels with Clang as the host compiler | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 4eccd43f | Docs: Mention preliminary Java & C# support | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 9da22cf9 | Make: Decompose CMake helpers and unify capability naming | Ash Vardanian <1****n@u****m> | 22 days ago | |
| f3378b2d | Fix: Honor tier overrides, multi-config builds, and stale probe caches | Ash Vardanian <1****n@u****m> | 22 days ago | |
| a4185d3b | Make: Regroup StringZillas sources by capability tier | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 9337409d | Fix: Make StringZillas capability narrowing reversible | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 169ac9a4 | Fix: Keep CPU capabilities when no GPU is present | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 122cd1ef | Fix: Mark cross-product test constants maybe-unused | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 7478e427 | Fix: Cover degenerate and wide-cell similarity shapes on every backend | Ash Vardanian <1****n@u****m> | 22 days ago | |
| fa3a4dbf | Fix: Guard degenerate cells and match warp kernels to cell width | Ash Vardanian <1****n@u****m> | 22 days ago | |
| d4122ab6 | Fix: Align UTF-8 break page LUTs to 64 bytes | Ash Vardanian <1****n@u****m> | 22 days ago | |
| ff741d4e | Fix: Clear rolling counts before each fingerprint chunk | Ash Vardanian <1****n@u****m> | 22 days ago | |
| 48785e96 | Fix: Detect host-accessible allocators without concepts | Ash Vardanian <1****n@u****m> | 22 days ago | |
| fe72a2af | Fix: Resolve the GPU scope through one binder | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 29db56e3 | Fix: Bind a CUDA context per device, per thread | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 8f426b8a | Chore: Drop the uncalled szs_*_for_ dispatch templates | Ash Vardanian <1****n@u****m> | 23 days ago | |
| f4ffe616 | Fix: Local min/max operators for block reductions | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 9e10818b | Fix: Size per-pair DP cells from the materialized reach | Ash Vardanian <1****n@u****m> | 23 days ago | |
| aae78659 | Improve: One reach derivation for the candidate-lane tiers | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 96152db6 | Fix: Seed discarded gap tracks one step above the boundary | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 82d480ee | Improve: Draw fuzzy corpora one UTF-8 character at a time | Ash Vardanian <1****n@u****m> | 23 days ago | |
| d0bd1832 | Improve: Skip the rune and affine planes when inputs allow | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 050d5f67 | Improve: Retire `sz_isascii` for a byteset scan | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 0e21398c | Fix: Inline linkage on `sz_rfind_byte_serial` | Ash Vardanian <1****n@u****m> | 23 days ago | |
| 3f430acb |
Make: Build free-threaded `cp314t` wheels
Co-authored-by: Ralf Gommers <9****s@u****m>, Nathan Goldbaum <3****m@u****m> |
Ash Vardanian <1****n@u****m> | 24 days ago | |
| 70eee2e4 | Improve: Serialize StringZillas engines per object | Ash Vardanian <1****n@u****m> | 24 days ago | |
| 87294b5f | Improve: Batch cross-product cells into lockstep launches | Ash Vardanian <1****n@u****m> | 24 days ago | |
| be0a7128 |
Fix: Borrow range haystacks instead of copying them
Co-authored-by: Aleksandr Orefkov <o****v@g****m>, Aleksandr Orefkov <1****v@u****m> |
Ash Vardanian <1****n@u****m> | 24 days ago | |
| 9dc777ab |
Fix: Materialize concatenation expressions from views and literals
Co-authored-by: Aleksandr Orefkov <o****v@g****m>, Aleksandr Orefkov <1****v@u****m> |
Ash Vardanian <1****n@u****m> | 25 days ago | |
| cfc5c80c | Fix: Build the Swift package on Windows under clang | Ash Vardanian <1****n@u****m> | 26 days ago | |
| a6402dd7 | Release: v5.0.3 [skip ci] | TinySemVer <t****r@a****m> | 28 days ago | |
| 762f9c0c | Chore: One sentence per line in Markdown | Ash Vardanian <1****n@u****m> | 28 days ago | |
| b9d34b05 | Improve: Close binding coverage gaps in Python & JavaScript | Ash Vardanian <1****n@u****m> | 28 days ago | |
| a904900b | Make: Load libcuda stub during CUDA wheel tests | Ash Vardanian <1****n@u****m> | 28 days ago | |
| 254ecd0e | Release: v5.0.2 [skip ci] | TinySemVer <t****r@a****m> | 29 days ago | |
| 982c0b2f | Make: Ship npm as per-platform prebuilt packages | Ash Vardanian <1****n@u****m> | 29 days ago | |
| af891e7e | Make: Link libcuda from the toolkit stub dir on driver-less hosts | Ash Vardanian <1****n@u****m> | 29 days ago | |
| 5f079cbf | Chore: Reformat CI and align packaging with the forkunion rename | Ash Vardanian <1****n@u****m> | 29 days ago | |
| 0d376ea1 | Release: v5.0.1 [skip ci] | TinySemVer <t****r@a****m> | 29 days ago | |
| fa8f5ffb | Make: Publish the npm package via OIDC trusted publishing | Ash Vardanian <1****n@u****m> | 29 days ago |