This is the release note of v8.0.0b2. See here for the complete list of solved issues and merged PRs.
We are planning to drop support for CUDA 8.0 / 9.1 (#3301) and cuDNN (#3303) in future v8 releases. If you have any concerns, please feel free to leave a comment in these issues.
New Features
- Add notification support for
fallback_mode(#2279, thanks @Piyush-555!) - Support multi-GPU
cupy.cuda.cufft.Plan1d(#2644, thanks @leofang!) - Add
cupy.median(#3134, thanks @Harshan01!) - Add
cupy.flatiter(#3165) - Add
cupy.gcdandcupy.lcm(#3190, thanks @niteya-shah!) - Support
cusolverDn<t>gesvdjandcusolverDn<t>gesvdaStridedBatched(#3192) - Add
cupyx.scipy.ndimage.label(#3210) - Add
cupyx.scipy.ndimage.grey_erosionandcupyx.scipy.ndimage.grey_dilation(#3216) - Add
cupy.diag_indicesandcupy.diag_indices_from(#3217, thanks @rushabh-v!) - Support
cusparse<t>csrgeam2andcusparse<t>csrgemm2(#3220) - Add
minimum_filter,maximum_filter,grey_closing,grey_openingtoscipy.ndimage(#3239) - Support
cusolverDn<t>gesvdjBatched(#3247) - Add
cupy.kaiser(#3268, thanks @niteya-shah!) - Support all dtypes in every sorting function in
cupy.cuda.thrust(#3286, thanks @leofang!)
Enhancements
-
Add R2C/C2R support to
cupy.cuda.cufft.PlanNd(#3102, thanks @leofang!) -
Make
RawKernelandRawModuleaware of CUDA context (alt) (#3201, thanks @leofang!) -
Make
diffreturnAxisErrorfor an invalid axis (#3231, thanks @grlee77!) -
Improve the efficiency of
cupy.padfor some simple cases (#3281, thanks @grlee77!) -
HIP
Performance Improvements
- Reduce list and tuple creation in
_kernelandreduction(#2702) - Remove unnecessary
Arginstantiation incuda/function.pyx(#3253) - Improve
norm(#3278)
Bug Fixes
- Fix: n-dimensional FFTs must preserve array contiguity when copying a view (#3034, thanks @grlee77!)
- Use larger type to represent index range in
cupy.take(#3118) - Fix byte buffer handling to support PyPy (#3225)
- Fix
_reduce_dimscall in reduction (#3262) - Raise
IndexErrorfor R2C/C2R FFT withaxes=()(#3264, thanks @leofang!) - Code fix + bug fix for
cupy.cuda.thrust(#3291, thanks @leofang!)
Code Fixes
- Remove
cupy/cuda/_environment.py(#3145, thanks @leofang!) - Fix
cupy.fill_diagonalto implement withcupy.flatiter(#3207) - Remove unreachable code (#3235)
- Refactor
__array_function__(#3236) - Simplify
TestEigenvalue(#3288)