Multiplication of complex ROCSparseMatrixCSC and real dense ROCMatrix (and vice-versa) fail with ERROR: LoadError: Scalar indexing is disallowed.. One would expect the multiplication to proceed, and a resulting complex dense ROCMatrix to come out.
using AMDGPU
using AMDGPU.rocSPARSE
using LinearAlgebra
using SparseArrays
A = ROCSparseMatrixCSC(sprand(Float64, 100, 100, 0.01))
B = AMDGPU.randn(Float64, 100, 100)
C = A * B # works
A = ROCSparseMatrixCSC(sprand(ComplexF64, 100, 100, 0.01))
B = AMDGPU.randn(Float64, 100, 100)
C = A * B # does not work
Multiplication of complex ROCSparseMatrixCSC and real dense ROCMatrix (and vice-versa) fail with ERROR: LoadError: Scalar indexing is disallowed.. One would expect the multiplication to proceed, and a resulting complex dense ROCMatrix to come out.
Minimal reproducer:
Note: the issue occurs with CUDA too. See JuliaGPU/CUDA.jl#3128