| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| CCCL Python Libraries (v1.1.0) source code.tar.gz | 2026-07-08 | 11.4 MB | |
| CCCL Python Libraries (v1.1.0) source code.zip | 2026-07-08 | 19.1 MB | |
| README.md | 2026-07-08 | 3.3 kB | |
| Totals: 3 Items | 30.5 MB | 2 | |
CCCL Python Libraries (v1.1.0)
Previous release: v1.0.2.
These are the release notes for the cuda-cccl Python package version 1.1.0.
The headline of this release is support for serialization and ahead-of-time (AoT) compilation of cuda.compute algorithm objects. There are no breaking changes to the public API.
Installation
Please refer to the install instructions here.
Features
- Serialization of
cuda.computealgorithm objects (#9644)
New top-level cuda.compute.serialize() and cuda.compute.deserialize() functions let you turn a built algorithm object into bytes and reconstruct it later. These are low-level building blocks for ahead-of-time compilation, on-disk caches, and cross-node communication of algorithm objects.
Compile once and write to disk: ```python import cuda.compute as cc, cupy as cp
d_in = cp.empty(1) d_out = cp.empty(1) op = lambda x: 2 * x transformer = cc.make_unary_transform(d_in=d_in, d_out=d_out, op=op) with open("transform.cclb", "wb") as f: f.write(cc.serialize(transformer)) ```
Load and run from a subsequent process (no rebuild): ```python import cuda.compute as cc, cupy as cp
with open("transform.cclb", "rb") as f: transformer = cc.deserialize(f.read())
d_in = cp.asarray([1., 2, 3]) d_out = cp.empty_like(d_in) transformer(d_in=d_in, d_out=d_out, op=lambda x: 2 * x, num_items=len(d_in)) # d_out == [2., 4., 6.] ```
- Ahead-of-time (AoT) compilation for multiple compute capabilities, including GPU-less builds (#9732)
You can now compile cuda.compute algorithms ahead of time for several compute capabilities at once, and on machines that have no GPU at all. This builds on separate compile and load steps in the underlying C layer (#8484), plus serialize()/deserialize() support in cccl.c (#9568). Documentation and examples for the serialization / AoT workflows were added as part of this work.
Bug Fixes / Performance
-
Fixed build-cache misses for closures over Python scalars (#9680, closes [#9626]) — an op that closed over a plain Python
int/float/boolwas JIT-rebuilt on every call because the cache keyed those scalars byid(). They are now keyed by value. -
Relaxed the histogram build-cache key (#9596, closes [#9594]) — avoids unnecessary recompilations.
-
Fixed the v2 (host-JIT) backend rejecting some well-known operators (#9649).
Packaging
- Pinned
numba < 0.66in the CUDA extras (cuda-cccl[cu12]/[cu13]) to work around a temporary incompatibility withnumba.cuda.types.NPDatetime(#9692).
Internal / CI
- Added benchmarks to measure
cuda.computehost-side overhead (#9432). - Added a CI job for the
minimalcuda-ccclextra and explicit no-numbatests, decoupling more of the test suite fromnumba.cudain favor of CuPy /cuda.core(#9434).
Notes
- v1.1.0 also includes all fixes previously shipped in the 1.0.1 and 1.0.2 patch releases (e.g. NVRTC 13.3 warning fix [#9171],
reduce_intotype-mismatch fix [#9206], building against CCCL C v2 [#9200], and numpy-scalar cache fix [#9469]).