# Error in testset libraries/cusparse/interfaces

**URL:** https://discourse.julialang.org/t/error-in-testset-libraries-cusparse-interfaces/126256
**Category:** General Usage
**Created:** [February 24, 2025, 5:40pm UTC](https://discourse.julialang.org/t/error-in-testset-libraries-cusparse-interfaces/126256 "2025-02-24T17:40:50Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![jgforbes](https://avatars.discourse-cdn.com/v4/letter/j/9de0a6/32.png) [@jgforbes](https://discourse.julialang.org/u/jgforbes)
#### Post date: [February 24, 2025, 5:40pm UTC](https://discourse.julialang.org/t/error-in-testset-libraries-cusparse-interfaces/126256/1 "2025-02-24T17:40:50Z")

</div>

I am seeing repeated errors when running test CUDA as show below.  
Is this a significant issue and if so, is there a fix?

Here is my configuration:  
ulia\> CUDA.versioninfo()  
CUDA runtime 12.6, artifact installation  
CUDA driver 12.7  
NVIDIA driver 565.77.0

CUDA libraries:

- CUBLAS: 12.6.4
- CURAND: 10.3.7
- CUFFT: 11.3.0
- CUSOLVER: 11.7.1
- CUSPARSE: 12.5.4
- CUPTI: 2024.3.2 (API 24.0.0)
- NVML: 12.0.0+565.77

Julia packages:

- CUDA: 5.6.1
- CUDA\_Driver\_jll: 0.10.4+0
- CUDA\_Runtime\_jll: 0.15.5+0

Toolchain:

- Julia: 1.11.3
- LLVM: 16.0.6

1 device:  
0: NVIDIA GeForce RTX 3090 (sm\_86, 21.862 GiB / 24.000 GiB available)

Here is the repeated error:  
Error in testset libraries/cusparse/interfaces:  
Error During Test at /home/jgf/.julia/packages/CUDA/1kIOw/test/libraries/cusparse/interfaces.jl:482  
Got exception outside of a @test  
Scalar indexing is disallowed.  
Invocation of getindex resulted in scalar indexing of a GPU array.  
This is typically caused by calling an iterating implementation of a method.  
Such implementations _do not_ execute on the GPU, but very slowly on the CPU,  
and therefore should be avoided.

If you want to allow scalar iteration, use `allowscalar` or `@allowscalar`  
to enable scalar iteration globally or for the operations in question.  
Stacktrace:  
[1] error(s::String)  
@ Base ./error.jl:35  
[2] errorscalar(op::String)  
@ GPUArraysCore ~/.julia/packages/GPUArraysCore/aNaXo/src/GPUArraysCore.jl:151  
[3] \_assertscalar(op::String, behavior::GPUArraysCore.ScalarIndexing)  
@ GPUArraysCore ~/.julia/packages/GPUArraysCore/aNaXo/src/GPUArraysCore.jl:124  
[4] assertscalar(op::String)  
@ GPUArraysCore ~/.julia/packages/GPUArraysCore/aNaXo/src/GPUArraysCore.jl:112  
[5] getindex(A::CuArray{Int32, 1, CUDA.DeviceMemory}, I::Int64)  
@ GPUArrays ~/.julia/packages/GPUArrays/uiVyU/src/host/indexing.jl:50  
[6] getindex(A::CuSparseMatrixCSR{ComplexF64, Int32}, i0::Int64, i1::Int64)  
@ CUDA.CUSPARSE ~/.julia/packages/CUDA/1kIOw/lib/cusparse/array.jl:398  
[7] getindex  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/adjtrans.jl:334 [inlined]  
[8] getindex  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/triangular.jl:280 [inlined]  
[9] getindex  
@ ./subarray.jl:320 [inlined]  
[10] iterate  
@ ./abstractarray.jl:1209 [inlined]  
[11] iterate  
@ ./abstractarray.jl:1207 [inlined]  
[12] \_all(f::typeof(iszero), itr::SubArray{ComplexF64, 1, UnitLowerTriangular{ComplexF64, Adjoint{ComplexF64, CuSparseMatrixCSR{ComplexF64, Int32}}}, Tuple{UnitRange{Int64}, Int64}, false}, ::Colon)  
@ Base ./reduce.jl:1309  
[13] all  
@ ./reducedim.jl:995 [inlined]  
[14] \_istriu  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/generic.jl:1317 [inlined]  
[15] istriu  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/generic.jl:1310 [inlined]  
[16] istriu  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/generic.jl:1309 [inlined]  
[17] ldiv!(A::UnitLowerTriangular{ComplexF64, Adjoint{ComplexF64, CuSparseMatrixCSR{ComplexF64, Int32}}}, B::Transpose{ComplexF64, CuArray{ComplexF64, 2, CUDA.DeviceMemory}})  
@ LinearAlgebra ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/LinearAlgebra/src/triangular.jl:972  
[18] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/test/libraries/cusparse/interfaces.jl:493 [inlined]  
[19] macro expansion  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Test/src/Test.jl:1793 [inlined]  
[20] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/test/libraries/cusparse/interfaces.jl:482 [inlined]  
[21] macro expansion  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Test/src/Test.jl:1793 [inlined]  
[22] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/test/libraries/cusparse/interfaces.jl:481 [inlined]  
[23] macro expansion  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Test/src/Test.jl:1793 [inlined]  
[24] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/test/libraries/cusparse/interfaces.jl:480 [inlined]  
[25] macro expansion  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Test/src/Test.jl:1704 [inlined]  
[26] top-level scope  
@ ~/.julia/packages/CUDA/1kIOw/test/libraries/cusparse/interfaces.jl:7  
[27] include  
@ ./sysimg.jl:38 [inlined]  
[28] #11  
@ ~/.julia/packages/CUDA/1kIOw/test/runtests.jl:89 [inlined]  
[29] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/test/setup.jl:63 [inlined]  
[30] macro expansion  
@ ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Test/src/Test.jl:1704 [inlined]  
[31] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/test/setup.jl:63 [inlined]  
[32] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/src/utilities.jl:35 [inlined]  
[33] macro expansion  
@ ~/.julia/packages/CUDA/1kIOw/src/memory.jl:831 [inlined]  
[34] top-level scope  
@ ~/.julia/packages/CUDA/1kIOw/test/setup.jl:62  
[35] eval  
@ ./boot.jl:430 [inlined]  
[36] runtests(f::Function, name::String, time\_source::Symbol)  
@ Main ~/.julia/packages/CUDA/1kIOw/test/setup.jl:74  
[37] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::@Kwargs{})  
@ Base ./essentials.jl:1055  
[38] invokelatest(::Any, ::Any, ::Vararg{Any})  
@ Base ./essentials.jl:1052  
[39] (::Distributed.var"#110#112"{Distributed.CallMsg{:call\_fetch}})()  
@ Distributed ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Distributed/src/process\_messages.jl:287  
[40] run\_work\_thunk(thunk::Distributed.var"#110#112"{Distributed.CallMsg{:call\_fetch}}, print\_error::Bool)  
@ Distributed ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Distributed/src/process\_messages.jl:70  
[41] (::Distributed.var"#109#111"{Distributed.CallMsg{:call\_fetch}, Distributed.MsgHeader, Sockets.TCPSocket})()  
@ Distributed ~/.julia/juliaup/julia-1.11.3+0.x64.linux.gnu/share/julia/stdlib/v1.11/Distributed/src/process\_messages.jl:287  
ERROR: LoadError: Test run finished with errors  
in expression starting at /home/jgf/.julia/packages/CUDA/1kIOw/test/runtests.jl:503  
ERROR: Package CUDA errored during testing
