Cupy

Latest version: v13.4.0

Safety actively analyzes 714736 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 26

12.0.0b2

Not secure
This is the release note of v12.0.0b2. See [here](https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3Av12.0.0b2) for the complete list of solved issues and merged PRs.

We are running a [Gitter chat](https://gitter.im/cupy/community) for general discussions and quick questions. Feel free to join the channel to talk with developers and users!

Highlights

More `cupyx.scipy.interpolate` APIs (7086, 7190 and 7215)

Increased coverage of `cupyx.scipy.interpolate` APIs, which now includes `BSpline`, `RBFInterpolator`, `splantider` and `splder`.

*Acknowledgements: This work was done by Edgar Andrés Margffoy Tuay (andfoy) and Evgeni Burovski (ev-br) under the support of the [Chan Zuckerberg Initiative's Essential Open Source Software for Science program](https://chanzuckerberg.com/eoss/proposals/enhancing-high-level-scientific-computing-support-in-cupy/).*

Use CUB reduction classes in `cupyx.jit` (7145)

Now it is possible to use the CUB reduction classes, `cub::WarpReduce` and `cub::BlockReduce`, in kernels written using CuPy JIT.

python
import cupy, cupyx
from cupy.cuda import runtime
from cupyx import jit

jit.rawkernel()
def warp_reduce_sum(x, y):
WarpReduce = jit.cub.WarpReduce[cupy.int32]
temp_storage = jit.shared_memory(
dtype=WarpReduce.TempStorage, size=1)
i, j = jit.blockIdx.x, jit.threadIdx.x
value = x[i, j]
aggregator = WarpReduce(temp_storage[0])
aggregate = aggregator.Reduce(value, jit.cub.Sum())
if j == 0:
y[i] = aggregate

warp_size = 64 if runtime.is_hip else 32
h, w = (32, warp_size)
x = cupy.arange(h * w, dtype=cupy.int32).reshape(h, w)
cupy.random.shuffle(x)
y = cupy.zeros(h, dtype=cupy.int32)
warp_reduce_sum[h, w](x, y)


*Acknowledgements: This work was done by Tsutsui Masayoshi (TsutsuiMasayoshi) as a part of the internship program at [Preferred Networks](https://www.preferred.jp/en/).*

Changes

New Features

- Add 1-D `BSpline` to `interpolate` module (7086)
- JIT: Support `cub::WarpReduce` and `cub::BlockReduce` (7145)
- Add `cupyx.scipy.interpolate.RBFInterpolator` (7190)
- Expose `splder` and `splantider` (7215)

Enhancements

- Use cuSPARSE Generic API instead of older one documented to be removed (7052)
- Improve `_PerfCaseResult.to_str` format (7152)

Bug Fixes

- Split inputs to random routines (7173)
- Fix 1-dim `lexsort` (7178)
- Fix `cupyx.scipy.ndimage.zoom` for outputs of size 1 when mode is `'opencv'` (7192)
- Fix wrong argument in `warnings.warn()` (7194)
- Use `list(kwargs)` instead of `list(kwargs.keys)` (7203)
- Fix cusparseSpSM compatibility (7214)
- Remove scipy import (7218)
- Use naive `comb()` for Python 3.7 (7221)

Tests

- CI: Generate coverage count just after the parameter axis in table (7175)

Contributors

The CuPy Team would like to thank all those who contributed to this release!

anaruse andfoy asi1024 emcastillo ev-br hadipash jjmortensen kmaehashi takagi TsutsuiMasayoshi

12.0.0b1

Not secure
This is the release note of v12.0.0b1. See [here](https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3Av12.0.0b1) for the complete list of solved issues and merged PRs.

We are running a [Gitter chat](https://gitter.im/cupy/community) for general discussions and quick questions. Feel free to join the channel to talk with developers and users!

Highlights

Support for CUDA 11.8 & NVIDIA H100 GPUs

This release adds support for CUDA 11.8 and the latest NVIDIA H100 GPUs. Note that CUDA 11.8 support is included in the `cupy-cuda11x` wheel.

Support for Python 3.11

Wheels are now available for Python 3.11.

`ufunc` Methods

This release adds `ufunc.reduce`, `ufunc.accumulate`, `ufunc.reduceat`, and `ufunc.at` methods. See the [documentation](https://docs.cupy.dev/en/latest/reference/ufunc.html#methods) for more details.

Use Thrust in `cupyx.jit` (7054, 7139)

Now it is possible to use the Thrust library device functions in kernels written using CuPy JIT.

python
import cupy, cupyx

cupyx.jit.rawkernel()
def sort_by_key(x, y):
i = cupyx.jit.threadIdx.x
x_array = x[i]
y_array = y[i]
cupyx.jit.thrust.sort_by_key(
cupyx.jit.thrust.device,
x_array.begin(),
x_array.end(),
y_array.begin(),
)

h, w = (256, 256)
x = cupy.arange(h * w, dtype=cupy.int32)
cupy.random.shuffle(x)
x = x.reshape(h, w)
y = cupy.arange(h * w, dtype=cupy.int32)
cupy.random.shuffle(y)
y = y.reshape(h, w)
sort_by_key[1, 256](x, y)


Currently supported Thrust functions are `count`, `copy`, `find`, `mismatch`, `sort`, `sort_by_key`.

Acknowledgements: This work was done by Tsutsui Masayoshi (TsutsuiMasayoshi) as a part of the internship program at [Preferred Networks](https://www.preferred.jp/en/).

Changes without compatibility

Deprecates `ndarray.scatter_{add,max,min}` (7097)

`cupy.ndarray.scatter_{add,max,min}` methods are marked as deprecated. Use the corresponding ufunc methods (`cupy.{add,maximum,minimum}.at`) instead.

CUDA library wrappers now live in `cupyx` (7013)

Previously, CuPy has been providing high-level wrappers for CUDA libraries as `cupy.cudnn`, `cupy.cusolver`, `cupy.cusparse`, and `cupy.cutensor`. These modules are now moved to `cupyx` as a part of the `cupy` namespace cleanup. The old modules are still available but marked as deprecated. Note that these modules are still undocumented and may be subject to change.

Changes

New Features

- Add `axis` to `cupy.logspace` (6797)
- Support `thrust::count, device` in CuPy JIT (7054)
- Add `cupy.ndarray.searchsorted` (7059)
- Support `add.at`, `maximum.at`, `minimum.at` (7077)
- Add pdist implementation to distance functions (7078)
- Support `subtract.at`, `bitwise_and.at`, `bitwise_or.at`, `bitwise_xor.at` (7099)
- Add `ufunc.reduce` and `ufunc.accumulate` (7105)
- Add `cupy.add.reduceat` (7115)
- Implement `cupy.min_scalar_type` (7136)
- JIT: Support more thrust functions (7139)

Enhancements

- Move `cupy.cudnn` `cupy.cusolver` `cupy.cutensor` `cupy.cusparse` to `cupyx` (7013)
- Allow randint to support array bounds (7051)
- Deprecate `ndarray.scatter_{add, max, min}` (7097)
- Support CUDA 11.8 H100 GPUs (7100)
- Support CUDA 11.8 (7117)
- Add CUDA 11.8 on documents (7119)
- Fix compile error from `inf`/`nan` in cupy.fuse (7122)
- Raise `TypeError` instead of `ValueError` in `cupy.from_dlpack` when CPU tensor is passed (7133)
- Support NCCL 2.15 (7153)
- Support Python 3.11 (7159)
- Fix indexing sparse matrix with empty index arguments (7143)

Bug Fixes

- Make sure that cupy (array-api) Array objects can be composed using asarray (6874)
- Don't use `__del__` in `TCPStore` (6989)
- JIT: Fix compile error for `op.routine` including `in0_type` (7076)
- Fix `cupy.nansum` in fusing (7102)
- Fusion `TypeError` in `cupy._core.fusion._call_ufunc()` (7113)
- Fix a typo (7163)
- JIT: Fix compile error of minmax function (7167)

Code Fixes

- Remove `_ufunc_method` directory (7116)
- Add missing base type to cdef declarations (7170)

Documentation

- Docs: Add missing functions (7103)
- Docs: ufunc methods (7104)
- Improve benchmark documentation (7176)

Installation

- Bump version to v12.0.0b1 (7181)

Examples

Tests

- CI: Add ROCm 5.3 (7124)
- CI: Allow `/test jenkins` to trigger Jenkins only (7126)
- Install zlib for CUDA 11.8 Windows CI (7137)
- CI: improve use of cache in GitHub Actions (7141)
- Fix for pytest 7.2 (7147)
- CI: Add support for the latest FlexCI Windows image (7161)
- JIT: Skip HIP `thrust::sort` test (7162)
- CI: use pre-commit in GitHub Actions (7123)

Others


Contributors

The CuPy Team would like to thank all those who contributed to this release!

anaruse andfoy asi1024 Diwakar-Gupta emcastillo IncubatorShokuhou kmaehashi MarcoGorelli takagi TsutsuiMasayoshi

12.0.0a2

Not secure
This is the release note of v12.0.0a2. See [here](https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3Av12.0.0a2) for the complete list of solved issues and merged PRs.

We are running a [Gitter chat](https://gitter.im/cupy/community) for general discussions and quick questions. Feel free to join the channel to talk with developers and users!

Highlights

Increased `cupyx.scipy` APIs (6773, 6990, 7014, 7015, 7036)

The coverage of SciPy `interpolate` & `special` APIs has increased. (Thanks khushi-411 & 1MrEnot!)

Initial support for `ufunc` methods (7049)

Starting from v12, CuPy will support the corresponding NumPy [`ufunc` methods](https://numpy.org/doc/stable/reference/ufuncs.html#methods).
This release adds compatibility with `ufunc.outer`. Check the tracking issue (7082) for detailed information.

Changes

New Features

- Add `cupyx.scipy.special.logsumexp` (6773)
- Add `cupyx.scipy.interpolate.KroghInterpolator` (6990)
- Add `scipy.special.expi` and `scipy.special.exp1` (7014)
- Add `cupy.byte_bounds` (7015)
- Adds `cupyx.scipy.special.k0`, `cupyx.scipy.special.k1`, `cupyx.scipy.special.k0e`, `cupyx.scipy.special.k1e` (7036)
- Add `ufunc.outer` (7049)
- Expose pairwise distance functions (7063)

Enhancements

- Support NCCL 2.12 ~ 2.14 (6534)
- Support cuDNN 8.5 (7008)
- Fix `cupy.apply_along_axis` for tuple retval (7068)
- Add wrapper for `cutensorPermutation` (7070)

Bug Fixes

- Fix JIT for scalar argument (6948)
- Make sparse argmin/max return a scalar array containing the index (6976)
- Fix `csrsm2` memory leak (7039)
- Make sure weibull distribution support ndarrays (7048)
- Fix bessel test to pass ROCm CI (7081)

Code Fixes

- Cosmetic change in `_routine_indexing.pyx` (7053)

Documentation

- Fixes docstring for interpolation prefiltering (6998)
- Typo fix (7045)

Tests

- CI: Create a status for FlexCI dashboard (7024)
- CI: Migrate to GAR from GCR (7064)
- CI: tentatively fix hypothesis version (7072)

Others

- Introduce pre-commit (6987)

Contributors

The CuPy Team would like to thank all those who contributed to this release!

1MrEnot andfoy asi1024 betatim khushi-411 kmaehashi leofang maronuu takagi wyli

12.0.0a1

Not secure
This is the release note of v12.0.0a1. See [here]([https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3Av](https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3AvX.Y.Z)12.0.0a1) for the complete list of solved issues and merged PRs.

We are running a [Gitter chat](https://gitter.im/cupy/community) for general discussions and quick questions. Feel free to join the channel to talk with developers and users!

Highlights

Increased `cupyx.scipy` APIs (6823, 6849, 6855, 6890, 6958, 6971)

The coverage of SciPy `interpolate`, `stats` & `special` APIs has increased. (Thanks khushi-411 & andoorve!)

Jetson AGX Orin Support (6876)

Arm (aarch64) wheels are now compiled with support for compute capability 8.7.
These wheels are available through our Pip index: `pip install --pre cupy-cuda11x -f https://pip.cupy.dev/aarch64`

Changes

New Features

- Add `cupy.heaviside` api. (6798)
- Add `cupyx.scipy.special.log_softmax` (6823)
- Add `cupyx.scipy.stats.boxcox_llf` (6849)
- Add `cupyx.scipy.stats.{zmap, zscore}` (6855)
- Add `cupyx.scipy.special.softmax` (6890)
- Add `dtype`, `fweights`, `aweights` to `cupy.cov` (6892)
- Add `cupyx.scipy.interpolate.BarycentricInterpolator` (6958)
- Add `scipy.special.cosm1` to `cupyx` (6971)

Enhancements

- Enhance JIT error message when `__device__` option is missing (6837)
- Fix `augassign` target is evaluated twice in JIT (6844)
- JIT: Add type annotation in `_compile.py` (6859)
- Add complex support for `nanvar` and `nanstd` (6869)
- Update `cupy.array_api` (6871)
- Accept `kind` in `sort`/`argsort` and fix `cupy.array_api.{sort,argsort}` accordingly (6872)
- Add CC 8.7 for Jetson Orin (6876)
- Update `cupy-wheel` for v11 (6903)
- Support `deg` in `cupy.angle` (6905)
- Make sure that uniform sampling respects broadcasting (6928)
- Update `cupy.array_api` (cont'd) (6932)
- Support SciPy 1.9 (6962)
- Make testing decorators able to use with `pytest.mark.parametrize` in some cases (6984)
- Relaxed C-contiguous requirement for changing dtype of different size (6848)
- Support `keepdims` parameter for `average` (6852)
- Support `equal_nan` parameter for `unique` (6853)

Performance Improvements

- Efficiency improvements in `cupyx.scipy.ndimage` utilities (6953)

Bug Fixes

- Generate CUBIN for all supported GPUs at build time (6875)
- Fix `boxcox_llf` (6884)
- Fix real and imag in subclass (6896)
- Fix `cupy.clip` to match numpy (6920)
- Let `argpartition` use the kth argument properly (6921)
- Fix cuTensorNet shim layer (6934)
- Fix occasional hang in sparse distributed (6942)
- Fix SciPy dependency leak (6947)
- Fix CUB reduction with zero-size arrays (6960)

Code Fixes

- Fix function names (6877)
- Remove proxy functions for softlink (6879)
- Suppress nvcc warning (6954)

Documentation

- Bump documentation build requirements (6825)
- Reverting to v10 installation instruction until v11 stable release (6836)
- Fix ROCm supported versions in compat matrix (6846)
- Generate docs for private classes in one location (6857)
- Expand breaking change & best practice on device management (6883)
- Update installation guide for v11 (aarch64) (6888)
- Update install instructions on README (6889)
- Document matmul supports out (6898)
- Fix docs build failure (6955)

Installation

- Reorganize build scripts: define compile options declaratively (6911)
- Parallelize Cythonize (6975)
- Remove use of `distutils.utils` (7006)

Examples

- Make matrix in CG example positive definite (6939)

Tests

- Update tags for FlexCI projects (6814)
- Add config for `cupy.win.cuda117` (6880)
- Fix `XFAIL` for `tests/cupyx_tests/scipy_tests/sparse_tests/test_coo.py` when `scipy>=1.9.0rc2` (6894)
- Use ubuntu-22.04 as GitHub Actions runner image (6988)
- Revert comment fix (6995)
- Filter warnings from setuptools 65 (7000)
- CI: bump CUDA version used in cuda-python test (7022)
- CI: Add ROCm 5.1 and 5.2 (6828)
- CI: Show all errors when doc build fail (6910)

Others

- Bump version to v12.0.0a1 (7027)

Contributors

The CuPy Team would like to thank all those who contributed to this release!

andfoy andoorve asi1024 BasLaa emcastillo grlee77 khushi-411 kmaehashi leofang pri1311 takagi tom24d toslunar tpkessler

11.6

Full support for CUDA 11.6 has been added as of this release. Binary packages are available in PyPI and can be installed with the following command: `pip install cupy-cuda116`

11.6.0

Not secure
This is the release note of v11.6.0. See [here](https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3Av11.6.0) for the complete list of solved issues and merged PRs.

**This is the last planned release for CuPy v11 series. Please start testing your workload with the v12 release candidate to get ready for the final v12 release. To install:`pip install -U --pre cupy-cuda11x -f https://pip.cupy.dev/pre`. See the [Upgrade Guide](https://docs.cupy.dev/en/latest/upgrade.html#cupy-v12) for the list of possible breaking changes in v12.**

We are running a [Gitter chat](https://gitter.im/cupy/community) for general discussions and quick questions. Feel free to join the channel to talk with developers and users!

Highlights

Page 4 of 26

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.