This is the release note of v12.0.0b3. See here for the complete list of solved issues and merged PRs.
We are running a Gitter chat for general discussions and quick questions. Feel free to join the channel to talk with developers and users!
Highlights
CUDA 12 & H100 Support
CuPy now supports CUDA 12.0 and NVIDIA's latest H100 GPU. Binary packages are available for Linux (x86_64/aarch64) and Windows.
$ pip install cupy-cuda12x --pre -f https://pip.cupy.dev/pre
Note that cuDNN support is unavailable at this time as cuDNN for CUDA 12 has not yet been released.
NXTX3
NVTX support in CuPy is now backed by NVTX3 instead of the legacy NVTX1.
Changes
New Features
- Add
cupyx.scipy.interpolate.make_interp_spline(#7195) - Implementing
RegularGridInterpolatorandinterpnfromscipy.interpolate(#7197) - Add
PPolytocupyx.scipy.interpolate(#7204) - Add
uniform()to random generator (#7205) - Implement
make_interp_spline(..., bc_type="periodic")(#7206) - JIT: Enhance thrust functions coverage (#7233)
- Add
CubicHermiteSplinetocupyx.scipy.interpolate(#7242)
Enhancements
- Conditionally change identifiers for ROCm (#7079)
cupyx.scipy.sparse.linalg.spsolve: allow two-dimensional right-hand sides inA @ X = B(#7219)- Support CUDA 12.0 (#7235)
- Extra fixes for CUDA 12.0 (#7236)
- Adding smaller eigenvalues option in
cupyx.scipy.sparse.linalg.eigsh(#7269) - Performance optimization of
RegularGridInterpolator(#7275) - Add function to diagnose Windows DLL load issue (#7279)
- Support NCCL 2.16 (#7283)
- Bump to cuTENSOR 1.6.2 (#7284)
- Support cuDNN 8.7 (#7285)
- Add
cupy-cuda12xtocupy-wheel(#7300) - Migrate to NVTX3 (#7304)
- Update for deprecations in NumPy 1.24 (#7245)
- Check if the slice does not have inhomogeneous shape before converting it to array (#7286)
- Update
array_api(#7313)
Bug Fixes
- Fix interpreting Sparse init arguments (#7222)
- Fix race condition in Jitify (#7259)
- Support passing int as shape to
broadcast_to(#7271) - Update cuTENSOR installer for CUDA 12.x (#7298)
Documentation
- Bump docs requirements (#7247)
- Add explanation for JIT kernel. (#7252)
- Doc: Add interop example using raw pointers (#7278)
- Doc: Bump supported environments (CUDA 12 / cuDNN 8.7 / NCCL 2.16) (#7310)
Installation
- Bump version to v12.0.0b3 (#7323)
Tests
- CI: Support cuTENSOR 1.6.2 which defaults to CUDA 12 (#7237)
- Skip tests if SciPy is unavailable (#7239)
- Fix CI failures related to
cupyx.scipy.interpolate(#7262) - Filter SQLAlchemy's warning on which optuna depends in test (#7276)
- Add CI for CUDA 12.0 (#7299)
- CI: Use NVTX1 in FlexCI image (#7311)
Contributors
The CuPy Team would like to thank all those who contributed to this release!
@anaruse @andfoy @asi1024 @ev-br @hubertlu-tw @ideasrule @kmaehashi @leofang @mandal-saswata @oishigyunyu @takagi