pypi cupy 8.0.0b1
v8.0.0b1

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

This is the release note of v8.0.0b1. See here for the complete list of solved issues and merged PRs.

Known packaging issues:

  • CuPy build fails when using CUDA 8.0 on Windows (#3076). Due to this issue, cupy-cuda80 wheel packages for Windows are unavailable for this version. Linux or CUDA 9.0+ users are unaffected.

Highlights

CuPy gets faster and more stable towards its v8.0.0 release. This version adds a handful of new routines, adds library wide performance improvements and corrects several bugs.

Changes without compatibility

  • Removed cupy.scatter_add, which had been deprecated since CuPy v4. Use cupyx.scatter_add instead.

New Features

Enhancements

  • Add ndarray variants AND inplace support in fallback_mode (#2391, thanks @Piyush-555!)
  • Support array-like start/stop and add axis argument to linspace (#2461, thanks @grlee77!)
  • Add fp16 support of CUB (#2600, thanks @y1r!)
  • Raise errors instead of assertion on array type checks (#2795)
  • Drop support for NumPy 1.15 or earlier (#2938)
  • Import using_allocator in cupy.cuda (#2951, thanks @jakirkham!)
  • Remove __future__ imports (#2995)
  • Support CUB prod (#3067, thanks @leofang!)
  • Remove deprecated cupy.scatter_add (#3074)
  • Update cupy.pad to use cupy.linspace instead of numpy.linspace internally (#3101, thanks @grlee77!)
  • Histogram update: support range, weights and density (#3124, thanks @grlee77!)
  • Add support for ord = 2, -2, and 'nuc' in cupy.linalg.norm (#3130, thanks @rushabh-v!)
  • Use ElementwiseKernel in cupy.fill_diagonal (#3139)
  • Allow dia_matrix creation from SciPy equivalent (#3160, thanks @jakirkham!)
  • Add labels in the benchmark and add kwargs to repeat (#3172, thanks @rushabh-v!)
  • Add out parameter to cupy.concatenate and cupy.stack (#2983)
  • Fix reshape to raise ValueError for order 'K' (#3123)

Performance Improvements

  • Improve cuDNN performance when using deterministic mode (#1380)
  • Improve performance of cumsum and cumprod (#2907)
  • Improve ndimage convolve and correlate (#3179)
  • Add check of c_contiguous when indexing CArray (#3191)

Bug Fixes

  • Fix an issue using non-existing attribute in cub.pyx (#2985)
  • Use size_t nbytes in __cuda_array_interface__ (#3009, thanks @jakirkham!)
  • Fix fill_diagonal (#3011)
  • Fix cupy.random.multivariate_normal (#3018, thanks @espg!)
  • Use Python scalar as random seed (#3054)
  • Properly decrement total bytes in memory pool (#3068)
  • Fix condition to use slice copy in ndarray.__setitem__ (#3088)
  • Fix compiler bug when building cupy.cuda.cub with CUDA < 9.2 (#3089, thanks @leofang!)
  • Fix cub_reduction for CUPY_CUB_MIN and float16 arrays (#3100)
  • Use time.process_time instead of time.clock (#3128, thanks @rushabh-v!)
  • Add support for 0 sized matrices in svd (#3140, thanks @rushabh-v!)
  • Fix CUB-based cupy.prod for half precision (#3148, thanks @leofang!)
  • Fix error type and message in coo_matrix (#3150)
  • Allow MatDescriptor to be pickle-able (#3157, thanks @jakirkham!)
  • Fix erfinv & erfcinv in cupyx.scipy.special (#3159, thanks @leofang!)
  • Remove some xfails in sorting tests (#3167)
  • Fix Event.__del__ behavior on shutdown` (#3176)
  • Add the missing initialization value in the reduction test (#3194, thanks @leofang!)

Code Fixes

  • Clean up internal.pyx (get_contiguous_strides) (#1950)
  • Remove custom tempdir context manager (#3003)
  • Use intptr_t instead of size_t for cuSPARSE and cuBLAS handles (#3081, thanks @Harshan01!)
  • Use intptr_t for cuDNN handles (#3082, thanks @Harshan01!)
  • Minor fix to using_allocator (#3094)
  • Remove IndexOrValueError (#3096)
  • Remove unused argument in fill_diagonal (#3171)
  • Silence sign comparison warning (cont'd) (#3181, thanks @leofang!)
  • Avoid enum comparison (-Wenum-compare) (#3182, thanks @leofang!)
  • Remove unused, deprecated fields from cudaPointerAttributes (#3183, thanks @leofang!)

Documentation

Examples

Tests

  • Added a compute capability check for testing grid sync (#3051)
  • Fix tolerance of fft tests (#3056)
  • Skip irfft tests for compute capability != 7 (#3084)
  • Rewrite tests not to use numpy_cupy_raises cupyx.* tests (#3099)
  • Rewrite manipulation tests not to use numpy_cupy_raises (#3122)
  • Remove python 2.7 builds (#3162)

Others

  • Add copyright notice for Random Kit (#3107)
  • Bump version to v8.0.0b1 (#3204)

Don't miss a new cupy release

NewReleases is sending notifications on new releases.