Question about Julia sparse matrices design decisions

I don’t know much about sparse matrix representations but note that transposes are always “trivial” in julia.

julia> A = spdiagm(0=>rand(2))
2×2 SparseMatrixCSC{Float64,Int64} with 2 stored entries:
  [1, 1]  =  0.922997
  [2, 2]  =  0.226075

julia> A'
2×2 Adjoint{Float64,SparseMatrixCSC{Float64,Int64}}:
 0.922997  0.0
 0.0       0.226075

Note that the type of A' is an Adjoint, which is a wrapper over the original array that takes care of indexing, etc… So in that sense, CSR wouldn’t be any different.
That said, I can’t say whether other aspects like memory management would be improved by having both types :man_shrugging:

1 Like