pypi cupy 10.0.0b1
v10.0.0b1

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

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

CuPy now supports CUDA 11.4 (cupy-cuda114)

Along with the new CUDA toolkit version, support for NCCL 2.10.3 and cuDNN 8.2.2 libraries is added.

Compute capability 86 support for GPUs of the RTX 30X0 and AX000 series is also added.

Google Summer of Code

CuPy is participating in Google Summer of Code under the NumFOCUS organization.

Our student @povinsahu1909 is working hard to add support for sparse linear algebra solvers and increasing the compatibility of the new random number generation API.

Compile with SASS (CUBIN) for CUDA versions >= 11.1 (#5097)

Changes NVRTC compile process to produce SASS (CUBIN files) instead of PTX so that kernels compiled with a new CUDA Toolkit version can be run with earlier CUDA Drivers. Check the CUDA Compatibility Guide and NVRTC Documentation for detailed information.

Changes without compatibility

Support the new DLPack exchange protocol (#5306)

By adopting the new DLPack exchange protocol proposed in the Python array API standard, cupy.fromDlpack has been deprecated in favor of cupy.from_dlpack.

Known Issues

  • cupy-cuda102, cupy-cuda110 and cupy-cuda111 wheels are not available yet in PyPI. In the meantime, they can be downloaded from the Assets section below. See #4971 for detailed instructions.

Changes

New Features

  • Texture memory 2D/3D affine transformations (#5171)
  • Support the new DLPack exchange protocol (#5306)
  • Add cupyx.scipy.sparse.linalg.lsmr (#5331)
  • JIT: Support all atomic intrinsics (#5387)
  • Expose _GUFunc through cupyx (#5408)
  • Add geometric distribution to new Generator (#5443)
  • Support Numba-like jit.gridsize() syntax in CuPy JIT (#5461)
  • Support Numba-like jit.laneid() and jit.warpsize syntax in CuPy JIT (#5462)
  • Add cupyx.scipy.sparse.linalg.cgs (#5524)
  • Add hypergeometric distribution to new Generator (#5560)

Enhancements

  • Compile with SASS for CUDA versions >= 11.1 (#5097)
  • Support NCCL v2.9.9 (#5268)
  • Support CUDA 11.4 and compute_86 (#5434)
  • Update NumPy/SciPy pinning in setup.py (#5453)
  • Make matrix_power support stacked matrices (#5458)
  • Support hipSPARSE and fix streams not set in some generic APIs in cuSPARSE (#5472)
  • Add cudaDeviceDisablePeerAccess wrapper (#5495)
  • Support cuDNN v8.2.2 (#5516)
  • Support NCCL v2.10.3: library installer and document (#5521)

Bug Fixes

  • JIT: Fix supported dtype of atomic_add on HIP (#5383)
  • Fix cupy.nanmedian's axis parameter to accept a sequence other than a tuple (#5389)
  • Fix astype from boolean (#5410)
  • Fix compatibility issues of ndarray.view (#5428)
  • Fix types attribute of ufunc (#5448)
  • Fix new DLPack protocol error messages and tests (#5449)
  • texture_memory option in affine_transform not supported by HIP (#5464)
  • Fix linalg.lstsq for empty matrix (#5467)
  • Fix reshape (#5470)
  • Fix random generator output not being raveled (#5478)
  • Fix random integers (#5479)
  • Fix availability tests in cuSOLVER and cuSPARSE (#5492)
  • Add missing hipSPARSE include to builder (#5515)
  • prune cuFFT static lib by major cc ver (#5531)
  • Fix casts from bool in ufunc inputs (#5539)
  • Access cudaMemoryType in the pointer attributes and fix for HIP (#5544)
  • Fix casts in ufunc outputs (#5550)
  • Code fix for {cu, roc}SOLVER (#5558)
  • Fix CUDA API call on module initialization (#5561)
  • Fix the RTC call path for HIP (#5569)
  • Fix broadcast error messages (#5579)

Code Fixes

  • Do not call cudnnGetVersion on import (#5326)
  • JIT: Fix __call__() for built-in functions (#5361)
  • Add HIP symbol redefinitions (#5362)
  • Remove the data member use_32bit_indexing from CArray (#5376)
  • Use dtype.name instead dtype.char (#5444)
  • Try to use -I in hipRTC (#5486)
  • Hide modules from public APIs (#5522)
  • consistent kernel names (#5551)
  • Use the new macro __HIP_PLATFORM_AMD__ at build time (#5554)

Documentation

  • Add upgrade guide for v10 (#5278)
  • Update tag lines in package description and docs index (#5399)
  • Fix typo in apply_along_axis (#5432)
  • Fix indent of Returns section (#5433)
  • Update user_guide/basic.rst device agnostic section (#5435)
  • Support CUDA 11.4 on documents (#5447)
  • Update install guide with new NumPy/SciPy versions (#5454)
  • Use from_dlpack instead of fromDlpack (#5488)
  • Use Sphinx 4.1.0 (#5489)
  • Bump ReadTheDocs configuration to version 2 (#5491)
  • Fix docs of eigh and eigvalsh (#5494)
  • Add a lingering doc page for fromDlpack() (#5509)
  • Document scipy.fft backend usage (#5514)
  • Replaced the links for NumPy docs as per issue #3418 (#5548)
  • Use Sphinx's envvar construct (#5570)
  • Fix intersphinx for SciPy 1.7.1 docs (#5587)

Installation

  • Fix license_file option in setup.cfg (#5406)
  • Import numpy before Cython (#5482)

Tests

  • Add tests for num_to_num's optional parameters (#5337)
  • Add script for ROCm CI on Jenkins (#5378)
  • Skip unwrap tests for numpy<1.21 (#5384)
  • Enable strict xfail in pytest (#5407)
  • Remove xfail in windows jitify test (#5409)
  • Fix preloading slow tests (#5440)
  • Add script for CUDA 11.4 CI on FlexCI (#5457)
  • Increase memory for CUDA 11.4 tests (#5477)
  • Fix DLPack test for ROCm/HIP (#5485)
  • Fix "Revert test decorators order" (#5498)
  • Fix some tests for HIP (#5501)
  • Fix FlexCI Linux tests (#5505)
  • Add CUDA 11.4 for FlexCI helper script (#5528)
  • Increase timeout for CUDA 11.4 tests (#5575)
  • Update tests to install all requirements and add PATH (#5576)
  • Add Cython to all requirements (#5577)

Others

  • Notify conflict by mergify (#5371)
  • Fix mergify to only comment when pull-request is open (#5439)
  • Fix mergify condition (#5513)
  • Add auto notify bot for hip label (#5538)
  • Use pull_request_target instead for auto notify bot (#5541)
  • Fix auto notify bot for issues (#5546)
  • Disable Mergify's auto-merge (#5556)
  • Bump version to v10.0.0b1 (#5595)
  • Fix signal tests for scipy 1.7.0 (#5368)
  • Fix numpy.unwrap for NumPy 1.21 (#5385)
  • Fix signaltools medfilt for scipy>=1.7.0 (#5386)
  • Fix deprecated numpy.typeDict utilization (#5388)

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

@12rambau @grlee77 @leofang @maxim-belkin @Palash-Vishnani @povinsahu1909 @the-lay

Don't miss a new cupy release

NewReleases is sending notifications on new releases.