This is the release note of v13.3.0. See here for the complete list of solved issues and merged PRs.
π¬ Join the Matrix chat to talk with developers and users and ask quick questions!
π Help us sustain the project by sponsoring CuPy!
β¨ Highlights
Updated NVIDIA CCCL
The CCCL library bundled with CuPy has been updated to eliminate the Jitify preprocess phase. Users will no longer see the one-time performance warning (Jitify is performing a one-time only warm-up to populate the persistent cache, this may take a few seconds and will be improved in a future release...
) unless explicitly requesting the use of Jitify (e.g., cupy.RawModule(..., jitify=True)
).
Enhanced NumPy 2.0 Compatibility
This release provides better interoperability with NumPy 2.0.
Support for CUDA 12.5 & 12.6
CuPy is now tested with CUDA 12.5 and 12.6.
RFC: Removing NumPy Fallback Mode in CuPy v14
The CuPy team is discussing the possibility of removing NumPy fallback feature in CuPy v14. Feel free to join the discussion in #8497 if you have any comments or use-cases using this feature.
π Changes
Enhancements
- Support CUDA 12.5 (#8423)
- Avoid using Jitify everywhere inside CuPy (#8473)
- Disable jitify for cub & Bump CCCL (#8487)
- Get rid of
pkg_resources
(#8496) - Unregister
cupyx.scipy.linalg.{tri,tril,triu}
from uarray (reverted in #8516) (#8506) - Use
.toarray()
instead of.A
attribute (#8517) - Extend runtime header search logic to conda (#8520)
- Support CUDA 12.6 (#8524)
- Fallback to system headers for future CUDA 12.x versions (#8529)
Bug Fixes
- Fix spline temp container size in
make_interp_spline
(#8390) - MAINT: Avoid using
np.compat.integer_types
(#8413) - Fix type dispatcher for arm64 (#8414)
- Fix
ndarray.get()
not honoring current stream when layout is not contiguous (#8418) - Fix copyto for NumPy 2 compatibility (#8435)
- Update
compiler.py
to avoid the popup of thenvcc.exe
console (#8438) - Fix
RandomState.seed()
for NumPy 2 compatibility (#8439) - Fix the size of temporary CUB output space to consider its alignment (#8447)
- Address
KeyErrors
fromimportlib_metadata
(#8465) - upfirdn:
mode=None
->mode="constant"
(#8495) - Search header files from CTK wheel (#8504)
- Fix CUDA version condition to use headers from wheel (#8507)
- Do not unregister
cupyx.scipy.linalg.{tri,tril,triu}
from uarray (#8516) - Fix ROCm 4.3 binary package build broken (#8534)
- Fix cudart header detection for conda (#8535)
Documentation
- eigsh doc correction
_eigen.py
(#8383) - typo:
coping
->copying
(#8427) - Add CUDA 12.5 to list of supported platform (#8428)
- Add comparison table for
(cupyx.)scipy.sparse.*_matrix classes
class methods (#8458)
Installation
- Patch the build system to better support conda-build (#8464)
Tests
- Bump NumPy/SciPy versions in cuda-example CI (#8420)
- Support SciPy 1.12 (#8422)
- Fix CUDA 11.2 CI failure on Linux (#8437)
- Decrease number of threads to avoid "system error: excessive memory usage is detected" (#8462)
- CI: skip CUDA 12.1/12.2/12.3/12.4 CI on "mini" trigger (#8469)
- Resolve Ruff
NPY
errors - fix exception imports andasfarray
usage in test code (#8471) - Skip some tests in aarch64 CI (#8490)
π₯ Contributors
The CuPy Team would like to thank all those who contributed to this release!
@andfoy @arkdong @asi1024 @bmerry @EarlMilktea @emcastillo @hmaarrfk @jakirkham @johnnynunez @kmaehashi @leofang @monzelr @seberg @swelborn @takagi @YanivDorGalron