pypi cupy 9.0.0b1
v9.0.0b1

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

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

Don't miss a new cupy release

NewReleases is sending notifications on new releases.