pypi cupy 9.0.0b2
v9.0.0b2

latest releases: 14.2.0, 14.1.1, 14.1.0...
5 years ago

This is the release note of v9.0.0b2. See here 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 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 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 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 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

Don't miss a new cupy release

NewReleases is sending notifications on new releases.