Description
This is fine:
import cupy as xp
xp.sort(xp.empty((0,)), axis=0)
# array([], dtype=float64)
and so is this:
xp.sort(xp.empty((2, 0,)), axis=0)
# array([], shape=(2, 0), dtype=float64)
But along the axis of zero length:
xp.sort(xp.empty((2, 0,)), axis=-1)
# ZeroDivisionError: integer division or modulo by zero
To Reproduce
import cupy as xp
xp.sort(xp.empty((2, 0,)), axis=-1)
# ZeroDivisionError: integer division or modulo by zero
Installation
Conda-Forge (conda install ...)
Environment
OS : Windows-11-10.0.26200-SP0
Python Version : 3.13.12
CuPy Version : 14.0.1
CuPy Platform : NVIDIA CUDA
NumPy Version : 2.3.5
SciPy Version : 1.18.0.dev0+git20260320.75eb555
Cython Build Version : 3.1.8
Cython Runtime Version : 3.2.4
CUDA Root : E:\miniforge3\envs\scipy-dev\Library
NVCC PATH : None
CUDA Build Version : 12090
CUDA Driver Version : 13000
CUDA Runtime Version : 12090 (linked to CuPy) / 12090 (locally installed)
CUDA Runtime Path : E:\miniforge3\envs\scipy-dev\Library\bin\cudart64_12.dll (locally installed)
CUDA Extra Include Dirs : ['E:\\miniforge3\\envs\\scipy-dev\\Library\\include']
cuBLAS Version : 120901
cuBLAS Path : E:\miniforge3\envs\scipy-dev\Library\bin\cublas64_12.dll
cuFFT Version : 11401
cuFFT Path : E:\miniforge3\envs\scipy-dev\Library\bin\cufft64_11.dll
cuRAND Version : 10310
cuRAND Path : E:\miniforge3\envs\scipy-dev\Library\bin\curand64_10.dll
cuSOLVER Version : (11, 7, 5)
cuSOLVER Path : E:\miniforge3\envs\scipy-dev\Library\bin\cusolver64_11.dll
cuSPARSE Version : 12510
cuSPARSE Path : E:\miniforge3\envs\scipy-dev\Library\bin\cusparse64_12.dll
NVRTC Version : (12, 9)
NVRTC Path : E:\miniforge3\envs\scipy-dev\Library\bin\nvrtc64_120_0.dll
Thrust Version : 300102
CUB Build Version : 300102
Jitify Build Version : <unknown>
NCCL Build Version : None
NCCL Runtime Version : None
NCCL Path : None
cuTENSOR Version : None
cuTENSOR Path : None
cuSPARSELt Build Version : None
cuSPARSELt Path : None
Device 0 Name : Quadro P400
Device 0 Compute Capability : 61
Device 0 PCI Bus ID : 0000:01:00.0
Additional Information
Discovered when developing edge case unit tests for the new scipy.stats.estimated_cdf; see https://github.com/scipy/scipy/pull/23949/changes#r2969252454.
Description
This is fine:
and so is this:
But along the axis of zero length:
To Reproduce
Installation
Conda-Forge (
conda install ...)Environment
Additional Information
Discovered when developing edge case unit tests for the new
scipy.stats.estimated_cdf; see https://github.com/scipy/scipy/pull/23949/changes#r2969252454.