Cupy

Latest version: v13.1.0

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

Scan your dependencies

Page 10 of 25

9.0.0b3

Not secure
This is the release note of v9.0.0b3. See [here](https://github.com/cupy/cupy/milestone/91?closed=1) 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

NumPy 1.20 and SciPy 1.6 support

In addition, we have ensured compatibility with the newly released NumPy 1.20 and SciPy 1.6.

`cupy.vectorize` Development

The development of the CUDA JIT for CuPy is progressing steadily. We currently support regular if/while/for statements and constant declarations. Currently the JIT is only used in `cupy.vectorize` with an almost complete support. Its uses will be extended in upcoming releases.

ROCm (HIP) 4.0 support

Starting in v9.0.0b3, we are providing `cupy-rocm-4-0` binary packages (wheels) for ROCm 4.0. Check the [installation guide](https://docs.cupy.dev/en/latest/install_rocm.html) for the details.

Support for ROCm/HIP is being addressed by fixing bugs and providing a stable CI environment in order to ensure a smooth development.

Changes without compatibility

Always run cythonize on sdist installation (4619)

When installing cupy from the regular sdist wheel, Cython files are provided instead of `.cpp` ones so an environment capable of running the latest Cython (0.29.22) is required.

Bump CUDA version for Docker images (4709, 4738)

The current base Docker images have been updated from CUDA 10.2 to CUDA 11.2.

Changes

New Features
- Support for Per Thread Default Stream (PTDS) (4322)
- Add `splu`, `spilu` and `factorized` to `cupyx.scipy.sparse.linalg` (4392)
- Support the built-in Stream Ordered Memory Allocator (4537)
- Add cuTENSOR to library download tool (4560)
- Support batched SVD (4628)
- Support if-statement in CuPy JIT (4646)
- Support while/for-statement in CuPy JIT (4677)

Enhancements
- Add `SparseEfficiencyWarning` and warn inefficient comparison (4213)
- Support ufunc call in CuPy JIT (4347)
- Use NVRTC for grid synchronization in `cupy.fuse` (4492)
- Wrap the new `nvrtcGetCUBIN` API (4558)
- Support explicit typecast in CuPy JIT (4595)
- Bump fastrlock requirement (4632)
- Bump cuDNN to v8.1.0 (4636)
- Fix Windows CI test script to avoid caching kernel when in pull-request test (4650)
- Update CUDA Array Interface to v3 - Part 2 (4659)
- Support assignment of compile-time constants in CuPy JIT (4672)
- Support cuTENSOR download tool on Windows (4678)
- Add cudnn and cutensor for CUDA 11.2 in `install_library` (4680)
- Fix tests for cuDNN 8.1 (4689)
- Use MSVC 14.0 with CUDA 11.2 (4698)
- Support CUDA 11.2 (4702)
- Slight code improvements for the CUB reduction kernel (4504)
- ROCm: Fix device attributes; Record HIP_VERSION; Add more device properties; etc (4556)
- Fix/skip some tests for HIP (4588)
- Skip failing tests for `cupy.cublas` under HIP (4652)
- Xfail test for `cupy._indexing.generate` under HIP (4654)
- Skip `TestPoly1dMathArithmetic` under HIP/ROCm (4656)
- Xfail tests for `eigenvalue` under HIP/ROCm (4661)
- Xfail tests for `convolve` under HIP/ROCm (4668)
- Fix definition order in preamble (4669)
- Fix invalid command line generated when rpath is empty (4717)
- Update spec of `linspace` to NumPy 1.20 (4604)
- Stop using deprecated type aliases (4605)
- Fix `poly1d` return types for NumPy 1.20 (4611)
- Deprecate passing `shape=None` to mean `shape=()` (4616)
- Improve floating point accuracy in percentile (4617)

Bug Fixes
- Fix cuSPARSE module build failure with CUDA 10.1 on Windows (4419)
- Fix warning message on cuDNN version (4487)
- Fix Jitify version detection on CUDA 11.0+ (4514)
- CUDA 11.2: Fix empty NVRTC program name (4538)
- Fix return type of `has_sorted_indices` of sparse array (4564)
- Fix device property default name (4594)
- Make `normal` and `lognormal` support array args (4615)
- Always run cythonize on sdist installation (4619)
- Make `uniform`-based random distributions support array args (4638)
- Fix typecast from complex to bool in JIT (4648)
- ROCm: disable PTDS (4651)
- Fix files not closed (4667)
- Revert `_get_arch` (4682)
- Fix random errors in batched SVD (4690)
- Fix thrust compilation in MSVC 14 for CUDA 11.2 (4713)
- Missing `constexpr` in `cupy_thrust.cu` (4730)
- Disable some `constexpr` only for windows (4735)
- Add missing attrs (4739)

Code Fixes
- Use `cupy.core._dtype.to_cuda_dtype` whenever possible (3853)
- Remove use of `numpy.bool` (4586)
- Avoid test discovery failure in NumPy 1.20 (4598)
- Stop using deprecated `numpy.complex` (4620)
- Use `CodeBlock` to generate human-readable code in JIT (4633)

Documentation
- Update doctest of `cupyx.scipy.linalg.lu_factor` (4561)
- Update installation guide for cuTENSOR on Conda-Forge (4614)
- Update documentation requirements (4630)
- Update document for cuDNN 8.1 (4643)
- Support building docs against pip installed cupy (4685)
- Add CUDA 11.2 to docs (4705)
- Add NCCL 2.8 to supported version (4710)
- Update Python / NumPy / SciPy requirements (4711)
- Remove unneeded environment variable from ROCm install guide (4720)
- Document that only x86_64 wheels are provided (4721)
- Fix dead link to issue (4736)
- Remove `cupy-cuda112` support from documentation (4761)

Installation
- Update install requirements (4631)
- Remove maximum cuDNN version check (4683)
- Bump Cython version requirement for Python 3.9 (4706)
- Bump CUDA version for Docker images (4709)
- Fix Docker image to use CUDA 11.1 (4763)
- Remove `pyproject.toml` (4734)
- Fix Cython setup requirement out of sync (4741)
- Add Docker image for ROCm and documentation (4737)
- Fix Docker image to use CUDA 11.1 (4763)

Tests
- Add FlexCI for Windows (4362)
- Test `numpy.VisibleDeprecationWarning` (4498)
- Fix test import failure in ROCm (4585)
- Publish results even if build failed in Windows CI (4714)
- Skip callback tests for this release (4745)

Others
- Bump version to v9.0.0b3 (4751)

Contributors
The CuPy Team would like to thank all those who contributed to this release!
anaruse leofang pentschev wphicks

9.0.0b2

Not secure
This is the release note of v9.0.0b2. See [here](https://github.com/cupy/cupy/milestone/89?closed=1) for the complete list of solved issues and merged PRs.

Highlights

Support for NumPy 1.17 New Random API (4177)

This release adds preliminary support for the [new random API](https://numpy.org/doc/stable/reference/random/) introduced in NumPy 1.17.
Since our implementation is based on cuRAND, we currently support the following `BitGenerator` objects: `XORWOW`, `MRG32k3a`, and `Philox4x3210`. Notice that they are different from NumPy ones. The new random module is currently in development and only a few distributions are supported in this first release (4557). Please check the [documentation](https://docs.cupy.dev/en/latest/reference/random.html) for further reference.

AMD/HIP support improved

Several bugs have been corrected for AMD devices and added support for ROCm 3.9. Now almost all the CuPy core functionalities are checked to work with HIP/ROCm. However, there are still some issues that require support from AMD such as using arrays with a size larger than 2^32 elements in element-wise and reduction routines.

Gitter Community

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!

Changes without compatibility

Removal of older pre-release packages from PyPI

As announced in 4360, we have removed pre-release wheels earlier than v6.0.0rc1 from PyPI. Those version wheels can be found at the [GitHub release](https://github.com/cupy/cupy/releases) page of every version, and can be installed by specifying `-f` option:


pip install --pre cupy-cuda101 -f https://github.com/cupy/cupy/releases/v6.0.0rc1


Changes

New Features

- Add NumPy v1.17 new random API with `Generator` (4177)
- Add `cufftXtMakePlanMany` and `cufftXtExec` (4407)
- Support texture object in `cupy.ElementwiseKernel` (4433)
- Add `cupyx.scipy.signal.oaconvolve` (4468)
- Add `cupy.round` (4539)

Enhancements

- ndimage: implement higher order spline interpolation (4402)
- ndimage: complex dtype support in filters and interpolation (4444)
- Fix potential race when compiling cuFFT callbacks (4508)
- Import DLPack header file & Fix multiple issues (4517)
- Remove experimental warnings from cupyx.scipy.ndimage (4518)
- Add complex support to `cupyx.scipy.signal` functions (4525)
- Implement `__format__` in `ndarray` (4544)
- Fix DLPack header version (4559)
- Support passing pointers as integers in memory copy routines (4562)
- Fix sparse format of `kron` (4536)
- Fix return type of `polynomial.__eq__` (4554)
- ROCm: Improve compiler (4102)
- ROCm: Cover more new BLAS/SOLVER functions (4217)
- Fixes a bunch of AMD issues (4485)
- Fix fusion tests for HIP (4521)
- ROCm: skip multi-GPU FFT tests (4553)

Performance Improvements

- Improve `cupy.argwhere` and `cupy.nonzero` (4367)

Bug Fixes

- Use `--device-c` for RDC compile (4470)
- Fix integer GEMM (4512)
- Fix `axis` of `cupy.gradient` (4523)
- Fix bug on bad interaction between `__cuda_array_interface__` and `__array_ufunc__` on HIP (4524)
- Fix `cupy.concatenate` typecheck for out with different dtype (4527)
- Fix `cupy.take` from an empty array (4530)
- Fix windows build of random module (4543)
- ndimage: coordinate rounding fix for `order=0` interpolation (4552)
- Fix return type of `polynomial.__eq__` to `numpy.bool_` (4563)
- Remove dependency on CUDA's math_constants.h (4565)
- Fix `cupyx.scipy.ndimage.zoom` for outputs of size 1 (4568)
- Fix `cupy.array` from nested list of zero-dim `ndarray` (4569)
- Fix Windows build failure in new random API (4574)

Code Fixes

- Refactor axis errors (4488)
- Remove deprecated stubs for CUDA<9.2 (4545)

Documentation

- Document `random.uniform` may return high (4509)

Tests

- Test `FutureWarning` (4226)
- Show type of error in `numpy_cupy_*` decorators (4403)
- Update PyTest (4507)
- Remove unnecessary `return` statements (4519)
- Check if the `accept_error` was not raised from test code (4566)

Contributors

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

anaruse coderforlife grlee77 leofang

9.0.0b1

Not secure
This is the release note of v9.0.0b1. See [here](https://github.com/cupy/cupy/milestone/86?closed=1) for the complete list of solved issues and merged PRs.

Changes without compatibility

Deprecations

As announced in 4300, CuPy v9 no longer supports the following out-dated components:

- Python 3.5
- CUDA 9.0 (`cupy-cuda90` will not be released for v9)
- cuDNN v7.5 (or earlier) and NCCL v2.3 (or earlier)
- NumPy 1.16 and SciPy 1.3

Removal of older pre-release packages from PyPI

As announced in 4360, we are going to remove pre-release wheels earlier than v6.0.0rc1 from PyPI on 2021-01-28. Those version wheels can be found at the [GitHub release](https://github.com/cupy/cupy/releases) page of every version, and can be installed by specifying `-f` option:

pip install --pre cupy-cuda101 -f https://github.com/cupy/cupy/releases/v6.0.0rc1


Changes

New Features

- Adding `cupyx.scipy.signal.fftconvolve` (3828)
- Add `cupyx.scipy.sparse.linalg.gmres` (4236)
- Add `cupyx.scipy.sparse.linalg.interface` that exposes `LinearOperator` Feature (4258)
- Add `cupyx.scipy.sparse.csr_matrix.diagonal` and `cupyx.scipy.sparse.csr_matrix.setdiag` (4284)
- Support CUB-backed `cupy.ReductionKernel` and `cupy.fuse` (4289)
- Add batched cholesky solver (4291)
- `cupyx.ndimage.measurements`: add `center_of_mass`, `histogram`, `labeled_comprehension` (4311)
- Add `cudaLaunchHostFunc` (4338)
- Add `cupyx.scipy.sparse.linalg.spsolve_triangular` (4356)
- Add `cupyx.scipy.ndimage.fourier_ellipsoid` (4361)
- Add `cupyx.scipy.stats.entropy` (4369)
- Add `cupy.quantile` (4370)
- Add `cupyx.scipy.sparse.linalg.spsolve` (4375)
- Add `tril`, `triu` and `find` to `cupyx.scipy.sparse` (4382)
- Add `cupy.interp` (4418)
- Add support for `LinearOperator` to `cg` and `gmres` in `cupyx.scipy.sparse.linalg` (4422)

Enhancements

- Adding C++ constructors for `CArray` and `CIndexer` (3683)
- Fix ndarray binary operations with non-CuPy arrays to return `NotImplemented` (4198)
- Change the wrapper arguments for cuBLAS L3 functions (4263)
- Revise dtype handling in `cupyx.scipy.ndimage.spline_filter` (4314)
- Update CUDA Array Interface to v3 - Part 1 (4357)
- Inherit environment variable and detect cl.exe automatically (4397)
- Fix `poly1d` (4399)
- `ndimage`: support all interpolation boundary modes (4400)
- `ndimage`: add grid_mode option to zoom (4401)
- Add support for `LinearOperator` to `eigsh` and `svds` in `cupyx.scipy.sparse.linalg` (4428)
- Update to use the new CArray and CIndexer constructors (4463)
- Deprecations for v9 (4479)
- Disable `__cuda_array_interface__` for HIP (4482)

Performance Improvements

- Improve `scan_core` in cupy/core/_routines_math.pyx (4316)
- Improve `scan` in cupy/core/_routines_math.pyx (4366)
- Fixing minor TODO in `scan` (4464)

Bug Fixes

- Apply fixes to the FFT callback module (4355)
- Fix `rcond` arg of `linalg.lstsq` (4365)
- Fix cufft callback manager error in Windows (4377)
- Fix `linalg.lstsq` for complex types (4390)
- Fix `cupy.searchsorted` on HIP (4437)
- Fix out-of-bound access in ndimage rank filters (4439)
- Support complex types in `solve_triangular` (4452)
- Eliminate read past end of array in percentile_weightnening (4453)
- `cupy.random.normal` fix broadcasting of scale and loc arguments (4457)
- Fix `__cuda_array_interface__` for HIP (4458)
- Fix overwritten issue in `cumsum` and `cumprod` (4460)
- Fix dev info allocation (4491)

Code Fixes

- Rename submodules under `cupy.lib` (3713)
- Clean up `cupy_backends` (4088)
- Replace stubs in ndimage by Jitify (4264)
- Refactor `cupyx.scipy.sparse.linalg.eigsh` (4275)
- Simplify `cupy.linalg.inv` (4293)
- Make names of test classes start with `Test` (4320)
- Refactor traceback in `testing.helper` (4442)

Documentation

- Add `scipy.fft` module to the API comparison table (4278)
- Fix docs of `cupy.random` functions/methods (4319)
- Update links to forums in README (4345)
- Incorrect environment variable description (4410)
- Add `spsolve_triangular` to the reference (4438)
- Fix doc of `LinearOperator` (4441)

Installation

- Remove broken support for macOS (3857)
- Fix parallel build (4348)
- Add support for cuTENSOR 1.2.2 (4404)
- Disentangle HIP from CUDA in the build script (4416)

Tests

- Set `__module__` attr to parameterized class (4239)
- `testing.numpy_cupy_allclose` with per-dtype tolerance (4269)
- Refactor `fft_tests`: unittest -> pytest (4287)
- Fix `testing.helper` to work without `unittest` (4304)
- Refactor ndimage_tests (4307)
- Update `[jenkins]` requirement (4325)
- Add broadcast test for `cupy.vectorize` (4341)
- Parameterize sparse matrix tests (4368)
- Remove travis (4373)
- Fix some FFT test issues (4385)
- Refactor test of `linalg.lstsq` (4388)
- Require SciPy >= 1.4 in `TestGmres` (4394)
- Run FFT callback test only on Linux (4411)
- Refactor `TestLinearOperator` (4413)
- Require SciPy 1.4 in `TestLinearOperator` (4420)
- Fix `RawKernel` test (4472)
- Exclude unsupported dtypes for TestOrderFilter (4477)
- Fix `TestEntropy`: Requires `scipy>=1.4.0` for `axis` parameter (4481)
- Skip large size test for hip (4461)

Others

- Drop support for Python 3.5 in CuPy v9 (4340)
- Configure Mergify to check GitHub Actions instead of Travis (4378)
- Bump version to v9.0.0b1 (4499)

Contributors

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

anaruse carterbox coderforlife dmargala grlee77 leofang mor2code venkywonka wphicks

9.0.0a2

Not secure
This is the release note of v9.0.0a2. See [here](https://github.com/cupy/cupy/milestone/84?closed=1) for the complete list of solved issues and merged PRs.

**Update (2020-12-02):** Unfortunately, the Windows build of this release is not working. We have taken down Windows wheels from PyPI, but if you need one for reference purposes you can still download them from the Assets section below. We are working hard to resolve this issue towards the next v9.0.0b1 release.

Highlights

`cupy.vectorize` & Initial CUDA JIT support

With this release, we are including a very early version of a Python to CUDA transpiler that will allow users to write their own CUDA kernels in Python, similarly to what Numba does. However, while Numba works on the bytecode and directly outputs the PTX code using LLVM, our approach uses the Python AST to directly translate the source code to C-CUDA and compile it using the NVIDIA toolchain, aiming to achieve a higher performance in the long run.


py
import cupy


def f(x, y):
This code will be compiled to a CUDA kernel by our JIT
return x * x + y * y


x = cupy.linspace(0, 10, 6)
y = cupy.linspace(0, 20, 6)


func = cupy.vectorize(f)
out = func(x, y)
out is [ 0. 20. 80. 180. 320. 500.]


The initial version provides the limited support of primitive operators but we will be going forward in the upcoming releases. Check out 4290 if you are interested.

Jitify for raw kernels and modules

Thanks to leofang now it is possible to use headers and libraries that were not possible before in `RawKernel` or `RawModule` due to the NVRTC reliance. With the new `jitify=True` option, [Jitify](https://github.com/NVIDIA/jitify) is applied to your code so that you can use libraries such as the cuRAND device API, or CUB device routines in your raw kernels.

`cupyx.lapack` now as a public interface to cuBLAS

Until now, cuBLAS & cuSOLVER bindings were not publicly exposed in the API. However, with the introduction of `cupyx.lapack` by anaruse, now it is possible to use LAPACK compatible routines backed by cuBLAS & cuSOLVER with a much simpler interface.

Deprecations in upcoming releases

We are going to drop support for Python 3.5 and obsolete libraries such as CUDA 9.0 and NumPy 1.16. Leave a comment in 4300 if you have any concerns in your use-case.

Changes

New Features

- Add `cupy.cusolver.gesv` that uses `cusolverDn<t1><t2>gesv` (3917)
- Add `cupy.cusolver.gels` that uses `cusolverDn<t1><t2>gels` (4073)
- Add `cupy.vectorize` (4135)
- Support cuFFT callbacks (4141)
- Add `spline_filter1d` and `spline_filter` to `cupyx.scipy.ndimage.interpolation` (4145)
- Add `cupyx.scipy.sparse.linalg.svds` (4155)
- Improve coverage of cuBLAS L1 functions (4205)
- Change the wrapper arguments for cuBLAS L2 functions (4221)
- Add `cupyx.scipy.sparse.linalg.cg` (4222)
- Support Jitify (4228)
- Add `cupyx.lapack` (4235)

Enhancements

- Remove `cupy.testing.NumpyError` (4225)
- Fix an issue in `cupyx.scipy.sparse.linalg.eigsh` with CUDA 9.2 (4231)
- Add parallel build feature (4240)
- Support compile-time constants in CuPy JIT (4241)
- Detect the CC of the device when building (4242)
- Reduce the file size of cuFFT callback modules (4267)
- Bump cuDNN to v8.0.5 (4303)
- Detect Jitify version (4306)

Performance Improvements

- Improve `cupy.random.randint` (4160)
- Improve performance of `cupyx.scipy.sparse.linalg.eigsh` (4214)
- Improve `convolve`/`correlate` (4248)
- Improve Jitify performance (4277)

Bug Fixes

- Respect user-supplied output array in all binary morphology functions (4157)
- Refactor `AssertFunctionIsCalled` (4233)
- Fix possible redefinition of "-ccbin" in `cupy.fft._callback` (4276)
- Fix undefined symbols in `cupy.fft._callback` (4283)
- Fix issues when coo sparse matrix is created from dense matrix (4295)
- Fix `cupy.random.bytes` not working (4318)

Code Fixes

- Use `.imag = 0` at hipFFT workaround (4234)
- Use `assert` statement instead of `self.assert*` methods (4292)

Documentation

- Add a note in `free_all_blocks` reference (4196)
- Add cupy-cuda111 to README (4210)
- Add missing functions to the API reference (4215)
- Add description of env vars for parallel build and auto cc detection (4250)
- Add `spline_filter` functions to ndimage docs (4265)
- `cupy-cuda111` package now on PyPI (4333)

Installation

- Reset `extra_compile_args` for each module (4336)
- Tentatively hide `CUPY_NUM_BUILD_JOBS` option (4339)

HIP/ROCm

- ROCm: Fix filters in `cupyx.scipy.ndimage` - Part 1 (4271)
- ROCm: fix ndimage interpolation (4301)

Tests

- Remove unused features in `testing.parameterized` (4178)
- Add pytest backend implementation of `testing.parameterize` (4192)
- Use Python 3.6 in Travis CI (4206)
- Add repr of parameterized test and stop adding error message (4211)
- Fix `numpy_cupy_equal` for case that both numpy cupy raise errors (4244)
- Fix tests of `__bytes__` (4252)
- Use GitHub Actions (4261)
- Skip some failing tests for fp16 + CUDA 9.0 (4299)
- Assert the results are bool (4310)
- Add import test for ROCm (4326)

Others

- Bump version to v9.0.0a2 (4331)
- Add `equal_nan` toggle for `NaN` values in `array_equal` (4203)
- Fix output dtype of `linalg.norm` (4227)
- Warn non-tuple sequence for multidimensional indexing (4245)
- `DeprecationWaring` on truth value on empty array (4308)

Contributors

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

grlee77 aitikgupta anaruse leofang

9.0.0a1

Not secure
This is the release note of v9.0.0a1. See [here](https://github.com/cupy/cupy/milestone/80?closed=1) for the complete list of solved issues and merged PRs.

Highlights

CUDA 11.1 Support

Support for CUDA 11.1 is added in 4184, with CUDA 11.1, GeForce RTX 30 series and Quadro RTX series can now be used in CuPy.

Notes on Wheel Packages

Update (2020-11-25): `cupy-cuda111` is now available on PyPI.
~CuPy for CUDA 11.1 (`cupy-cuda111`) wheel packages are currently only available for Windows. We are going to publish Linux wheels once we get [approval](https://github.com/pypa/pypi-support/issues/690) from the PyPI team. Meanwhile, Linux wheels can be downloaded from the Assets section below (or `pip install cupy-cuda111 -f https://github.com/cupy/cupy/releases/tag/v9.0.0rc1`).~

New Features


- Add compressed sparse `__setitem__` (3533)
- Add `cupy.polyfit` (3747)
- Support sparse pointwise division by vectors or matrices (3838)
- Add `cudaGetDeviceProperties` (3858)
- Support sparse pointwise maximum and minimum (3860)
- Add all binary morphology functions to `cupyx.scipy.ndimage` (3907)
- Support `cublasXgetrsBatched` and add `cupy.cublas.batched_gesv` (3936)
- Add `cupy.testing.shaped_sparse_random` (3944)
- Add sparse pointwise equality & inequality functions (3945)
- Add remaining grayscale morphology operations to `cupyx.scipy.ndimage` (3946)
- Add `histogram2d` and `histogramdd` (3947)
- Add `cupy.gradient` (3963)
- Add several functions to `cupyx.scipy.ndimage.measurements` (3979)
- Add `cupyx.scipy.linalg.lu` (3995)
- Add `cupy.apply_along_axis` (4008)
- Add `cupyx.scipy.sparse.linalg.norm` (4017)
- Add missing sparse matrix constructors (4052)
- Add `cupy.cusolver.gels` (4064)
- Add `` operator support to `cupyx.scipy.sparse` (4075)
- Add `cupy.nancumsum` and `cupy.nancumprod` (4077)
- Add `order` option in `cupy.testing.shaped_random` (4091)
- Add `cupy.nanmedian` (4092)
- Add complex dtype support in `cupy.nanmin` and `cupy.nanmax` (4097)
- Add `cupy.append` and `cupy.resize` (4112)
- Add `cupyx.scipy.sparse.linalg.eigsh` (4138)
- Add support for CUDA 11.1 (4184)

Enhancements


- Support list bins with `histogram` (3542)
- Add a cuFFT plan cache (3730)
- Support transforming NumPy arrays with multi-GPU `Plan1d` (3766)
- Show numpy and scipy versions in `show_config` (3768)
- Add cuTENSOR 1.2 support (3884)
- Update FP16 header to CUDA 11.0 Update 1 (11.0.3) (3888)
- Check format of sparse matrix in `numpy_cupy_array_equal` (3897)
- Improve accuracy of `cupy.around` (3904)
- Bump cuDNN version to v8.0.3 (3985)
- Add complex dtype support to `cupyx.scipy.linalg.lu_factor/solve` (4002)
- Add cython bindings to cuSPARSE `csrsv2`/`csrsm2` related functions (4031)
- Support pickling `cupy.RawKernel` (4055)
- Allow non-contiguous array input to binary morphology functions (4058)
- Improve performance of binary morphology for fully nonzero structuring elements (4059)
- Bump cuDNN to v8.0.4 (4065)
- Add `*svdjBatched` prototypes (4071)
- Defer import in `cupy/_environment.py` (4162)
- Record Cython build and runtime versions (4164)

Performance Improvements

- Use cuTENSOR in `cupy.prod`, `cupy.max`, `cupy.min`, `cupy.ptp` and `cupy.mean` (3765)
- Use `_csr_row_index` for CSR matrix major-axis slicing with step (3852)
- Improve CSR matrix column fancy indexing (3886)
- Use LU-decomposition based solver in `cupy.linalg.solver` (3942)
- Improve `cupyx.scipy.sparse` int x int indexing (3981)
- Avoid using `CUlinkState` unless absolutely necessary (3992)
- Improve `cupy.in1d` (4018)
- Improve `cupy.cuda.cub.device_segmented_reduce()` (4161)

Bug Fixes

- Fix cooperative kernel launch (3894)
- Fix dtype in CSR matrix division (3905)
- Fix `csr2csc` for zero-size matrix (3919)
- Handle transfer to cupy view (3928)
- Fix `_compressed_sparse_matrix._minor_slice` for step > 1 case (3948)
- Fix `csr_matrix._get_intXslice` for step < 0 case (3951)
- Fix `sparse.__getitem__` not to return view of input (3975)
- ROCm: fix rocBLAS and rocSOLVER version displays (3988)
- Add a kernel for integer GEMM (3994)
- Fix typos in `cupy.cuda.cufft` (4014)
- Fix managed memory leak (4015)
- Fix potential segfault when reduction axis is empty (4024)
- Use `__dealloc__` instead of `__del__` for cdef class (4036)
- Fix typo in `_binary_erosion` (4038)
- Fix CUB block reduction for F-order arrays with ndim > 2 (4062)
- Add work-around for issue in `cutensorReduction` of cuTENSOR 1.2.1 (4081)
- Handle `np.nan` and `np.inf` constant values properly in ndimage functions (4083)
- Fix `argmax` and `argmin` for F-order inputs (4084)
- Workaround `cudaPointerGetAttributes` error in CUDA 10.2+ (4085)
- Fix `argmax`/`argmin` in CUB block reduction for F-order arrays with ndim > 1 (4096)
- Fix `getDeviceProperties` for HIP (4108)
- Add compute capability checking for `cublasGemmEx()` (4114)
- Fix 64-bit int types in `type_dispatcher.cuh` (4124)
- Fix mode='opencv' case in cupyx.scipy.ndimage.affine_transform (4130)
- Add `compute_35` for CUDA 11.0+ (4137)
- Fix device properties for cuda 9.2 (4142)
- Fix `cupyx.seterr()` when `linalg` not supplied (4150)
- Fix broadcasting behavior in `ndimage.measurements` functions (4151)
- Fix `argwhere` for 0d inputs (4167)
- Fix `nonzero` for 0d inputs (4168)
- Fix to use current stream properly with CUDA-related libraries (4173)

Code Fixes

- Split cupy cuda header (3616)
- Rename `cupy.io` submodule to `cupy._io` (3712)
- Rename `cupy.logic` submodule to `cupy._logic` (3715)
- Rename `cupy.manipulation` submodule to `cupy._manipulation` (3716)
- Rename `cupy.math` submodule to `cupy._math` (3717)
- Rename submodules under `cupy.linalg` package (3741)
- Rename `cupy.statistics` submodule to `cupy._statistics` (3774)
- Rename `cupy.util` submodule to `cupy._util` (3779)
- Rename submodules under `cupyx.linalg` package (3784)
- Refactor CSR sparse matrix row fancy indexing (3865)
- Rename submodule under `cupy.prof` package (3869)
- Rename submodule under `cupy.fft` package (3870)
- Hide private names in `cupy/__init__.py` (3871)
- Rename `cupyx.rsqrt` submodule (3873)
- Rename `cupyx.runtime` submodule (3874)
- Rename `cupyx.scatter` submodule (3875)
- Rename submodule under `cupyx.scipy.fft` (3899)
- Rename submodule under `cupyx.scipy.fftpack` (3900)
- Rename submodules under `cupyx.scipy.sparse` (3901)
- Rename submodules under `cupyx.scipy.special` (3902)
- Hide private names in `cupyx/scipy/__init__.py` (3912)
- Hide private names in `cupyx.time` (3965)
- Hide private names in `cupy.cudnn` (3966)
- Hide private names in `cupy.cusolver` (3967)
- Hide private names in `cupy.cusparse` (3968)
- Hide private names in `cupy.cutensor` (3969)
- Move `_normalize_axis_index` to `cupy/core/internal.pyx` (4057)
- Move `matmul` from `core.pyx` to `_routine_linalg.pyx` (4060)

Documentation

- Fix wrong curand enum names (3840)
- Add `cupy.searchsorted` to doc (3908)
- Update `cupyx.scipy` API documentation (3954)
- Fix docs of cupyx.scipy.linalg.lu_factor (4011)
- Improve the plan cache documentation (4013)
- Update README and docs for unified tagline (4047)
- Simplify ROCm install guide (4048)
- Fix typo (4053)
- Add note about starting nvprof with profiling off (4144)
- Fix docstrings of `cupyx.scipy.ndimage.{minimum,maximum}_position` (4146)

Installation

- Add `CUDA_VERSION` define for Cython compilation (3877)

Tests

- Code fix on tests for `cupyx.scipy.ndiamge` stats functions (3426)
- Add different dtype input test in histogram (3618)
- Fix 32-bit boundary test to run on Windows (3859)
- Fix `cupy.ndim` test style (3890)
- Fix test fail when cudnn is unavailable (3906)
- Add v8 to list of known branch in FlexCI script (3911)
- Fix side effects in some tests (3934)
- Fix some test to check compatibility with scipy's behavior (3955)
- Refactor sparse indexing tests (3958)
- Require SciPy 1.2 for sparse comparison (4033)
- Add `generate_matrix` to `cupy.testing` (4070)
- Make parameterized dtype test skip by `pytest.skip` (4094)
- ROCm gpg url changed (4127)
- Fix tests that have side effects (4149)
- Enhance dtype error message in testing helpers (4156)
- Fix `polyfit` tests tolerance (4159)
- Use `testing.assert_warns` (4169)

HIP/ROCm

- ROCm: Fix bugs and test suites to make ROCm/HIP happy - Part 1 (3823)
- ROCm: Fix bugs and test suites to make ROCm/HIP happy - Part 2 (3835)
- ROCm: Support rocTX (3843)
- ROCm: Support rocFFT/hipFFT (3896)
- ROCm: Support more hipBLAS/rocBLAS and rocSOLVER functions (3950)
- ROCm: Support hipCUB/rocPRIM (4027)
- ROCm: Support RCCL (4099)
- ROCm: Build on latest ROCm (4110)

Others
- Disable github checks annotations of Codecov (4020)
- Bump version to v9.0.0a1 (4194)


Contributors

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

anaruse carterbox cjnolet Dahlia-Chehata garanews grlee77 kalvdans leofang mrkwjc saswatpp

8.6.0

Not secure
This is the release note of v8.6.0. See [here](https://github.com/cupy/cupy/pulls?q=is%3Apr+is%3Aclosed+milestone%3Av8.6.0) 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!

Notes

Final release for v8.x series

We expect this version to be the final release for v8.x series. Please start testing your workloads with the latest v9.x pre-release.

CUDA 11.0 and 11.1 wheels for Windows not available yet in PyPI (4971)

In the meantime they can be downloaded from the Assets section below. See 4971 for the detailed instructions.

Changes

Enhancements
- Bump cuDNN to v8.1.1 in library installer tool (4795)
- Update DLPack support (4849)
- Bump headers to CUDA 11.2.2 (4917)

Bug Fixes
- [v8] Fix `linalg.pinv` on empty matrices (4783)
- Windows: Fix histogram test failures (4784)
- Windows: fix sparse matrix indexing type (4796)
- Support int argument for Dirichlet shape (4798)
- Windows: Fix compiler error for CUB block reduction kernels (4814)
- ROCm: Fix sorting bug (4826)
- Unify linux/windows randint with NumPy (4827)
- Fix dtypes in `cupy.linalg` (4839)
- Fixed choice function for 0 samples from 0 candidates (4851)
- Improve/fix `csc`/`csr` `argmax`/`argmin` (4858)
- Fix cooperative kernel launch (4887)

Code Fixes
- Use newest versions of stylecheck packages (4800)
- Fix: code quality issues (4832)

Documentation
- Remove `cupy-cuda112` support from documentation (4762)
- Revert " Remove `cupy-cuda112` support from documentation" (4786)
- Reformat environment variables table (4856)

Installation
- Bump version to v8.6.0 (4954)

Tests
- Windows: Fix test condition for CUB device kernels (4793)
- Windows: Fix cuTENSOR tests (4818)
- Remove AppVeyor configurations (4846)
- Windows: fix OOM errors in the CI (4862)
- Fix raw kernel test (4871)
- Windows: Fix `test_poly1d_pow_scalar` (4889)
- Windows: Skip failing cuDNN tests (4901)
- Add names for workflows (4914)
- Show config on Windows CI (4918)
- Prioritize FlexCI daemon in Windows CI (4921)
- Fix to work with scheduled FlexCI job (4931)

Others
- Add `CODEOWNERS` file (4788)
- Fix pytest opts for Windows CI (4822)
- Rename submodules under `cupy.testing` package (4876)

Contributors

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

anaruse aryamccarthy leofang povinsahu1909 withshubh

Page 10 of 25

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.