You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统下CuPy无法检测到cuSPARSELt的问题求助

问题:Windows下CuPy无法检测到cuSPARSELt库

我在Windows系统里没法让CuPy检测并使用cuSPARSELt库。已经试过安装CuPy文档里提到的0.2.0版本,还有当前最新的0.6.2版本,两次安装后都能用where cusparseLt.dll找到对应的DLL文件,但CuPy就是识别不到。

有没有漏掉什么配置?下面是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

当前os.environ["PATH"]的输出:

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

解决步骤
  • 调整PATH顺序:把cuSPARSELt的lib目录移到PATH最前端。Windows按PATH顺序加载DLL,可能前面的路径有冲突文件,或是CUDA自带目录优先级更高导致没找到你的cuSPARSELt。修改后重启终端和Python环境再测试。
  • 核对版本兼容性:你用的CUDA是12.4,cuSPARSELt 0.6.2要求CUDA 12.x,但要确认版本完全匹配。另外查下CuPy 13.3.0的release notes,确认它对cuSPARSELt 0.6.2的支持情况,必要时换用和CuPy编译匹配的cuSPARSELt版本。
  • 手动设置环境变量:除PATH外,设置CUDA_PATH和CUSPARSelt_PATH指向对应安装目录,确保CuPy编译时能找到头文件和库文件。示例命令:
    setx CUDA_PATH "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4"
    setx CUSPARSelt_PATH "C:\Users\LILBRO\Documents\Tools\CUDA\cuSPARSELt\current"
    
  • 从源码编译CuPy:如果是pip安装的预编译CuPy包,可能没包含cuSPARSELt支持。试试从源码编译,确保编译时能检测到cuSPARSELt的头文件和库:
    pip install cupy --no-binary :all:
    
  • 验证DLL位数:确认你的cuSPARSELt DLL是64位的(和Python 3.12位数一致),32位DLL会加载失败。
  • 检查目录权限:确保当前用户对cuSPARSELt安装目录有读取权限,权限不足可能导致DLL加载失败。

内容的提问来源于stack exchange,提问作者srcLegend

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 07:24:53