cudacupy

cuSPARSELt not found by CuPy


I have a hard time getting CuPy to detect and use, where applicable, the cuSPARSELt library in Windows. I tried installing versions 0.2.0 (as mentioned by CuPy's installation guide) and 0.6.2 (the latest version as of the time of posting), and in both tries, cusparseLt.dll was found successfully using where cusparseLt.dll.

Am I missing something here? Here is the output of cupy.show_config()

OS                           : Windows-10-10.0.19045-SP0
Python Version               : 3.12.5
CuPy Version                 : 13.3.0
CuPy Platform                : NVIDIA CUDA
NumPy Version                : 2.1.0
SciPy Version                : 1.14.1
Cython Build Version         : 0.29.36
Cython Runtime Version       : None
CUDA Root                    : C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4
nvcc PATH                    : C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4\bin\nvcc.EXE
CUDA Build Version           : 12060
CUDA Driver Version          : 12030
CUDA Runtime Version         : 12060 (linked to CuPy) / 12040 (locally installed)
CUDA Extra Include Dirs      : []
cuBLAS Version               : 120405
cuFFT Version                : 11201
cuRAND Version               : 10305
cuSOLVER Version             : (11, 6, 1)
cuSPARSE Version             : 12301
NVRTC Version                : (12, 4)
Thrust Version               : 200600
CUB Build Version            : 200600
Jitify Build Version         : 1a0ca0e
cuDNN Build Version          : 8801
cuDNN Version                : 8801
NCCL Build Version           : None
NCCL Runtime Version         : None
cuTENSOR Version             : 20001
cuSPARSELt Build Version     : None
Device 0 Name                : NVIDIA GeForce RTX 4090
Device 0 Compute Capability  : 89
Device 0 PCI Bus ID          : 0000:01:00.0

Here is my current os.environ["PATH"] output, with some formatting:

C:\Windows
C:\Windows\system32
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0
C:\Program Files (x86)\dotnet-core-uninstall
C:\Program Files (x86)\Intel\oneAPI\compiler\latest\bin
C:\Program Files (x86)\Intel\oneAPI\compiler\latest\lib
C:\Program Files (x86)\Intel\oneAPI\mkl\latest\bin
C:\Program Files (x86)\Intel\oneAPI\mkl\latest\include
C:\Program Files (x86)\Intel\oneAPI\mkl\latest\lib
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common
C:\Program Files\Docker\Docker\resources\bin
C:\Program Files\dotnet
C:\Program Files\Git\cmd
C:\Program Files\MATLAB\MATLAB Runtime\v98\runtime\win64
C:\Program Files\Matrox Imaging\Mil\DLL
C:\Program Files\Matrox Imaging\Tools
C:\Program Files\Microsoft SQL Server\130\Tools\Binn
C:\Program Files\Microsoft SQL Server\150\Tools\Binn
C:\Program Files\Microsoft VS Code\bin
C:\Program Files\OpenSSH
C:\Users\LILBRO\AppData\Local\Programs\Python\Python312
C:\Users\LILBRO\AppData\Local\Programs\Python\Python312\Scripts
C:\Users\LILBRO\Documents\Tools\CUDA\cuSPARSELt\current
C:\Users\LILBRO\Documents\Tools\CUDA\cuSPARSELt\current\include
C:\Users\LILBRO\Documents\Tools\CUDA\cuSPARSELt\current\lib

Solution

  • I have a hard time getting CuPy to detect and use, where applicable, the cuSPARSELt library

    A Cupy developer commented that at present, release builds of Cupy don’t have cuSPARSELt support enabled. To do that, you would require building your own version of the package from source with support enabled.