SparseArrays.jl icon indicating copy to clipboard operation
SparseArrays.jl copied to clipboard

GPU component of CHOLMOD as package extension

Open loonatick-src opened this issue 2 years ago • 3 comments

Very closely related to this issue in CUDA.jl. It was suggested that the GPU component of SuiteSparse/CHOLMOD could be implemented as a package extension to SparseArrays.jl when CUDA.jl is also available. I would like to contribute to this, but I am not sure if this (i.e. implementing as a package extension) is the right direction for this, and how exactly this would work with both SuiteSparse_jll and SuiteSparse_GPU_jll artifacts.

Would SparseArrays.jl be open for contributions pertaining to this feature?

loonatick-src avatar Sep 20 '23 06:09 loonatick-src

My understanding is that CHOLMOD does this through an environment variable, with no api change - so an extension should be easy. We have SuiteSparse_GPU_jll artifacts for this, although they perhaps need updating.

@Wimmerer Would an extension be ok?

ViralBShah avatar Sep 20 '23 12:09 ViralBShah

It's just an environment variable indeed. We could perhaps just add a function stub that sets and unsets this variable? And implement it in an extension.

The GPU builder, and indeed the normal one, should be updated one more time before we release 1.10.

rayegun avatar Sep 20 '23 12:09 rayegun

SS 7.2 build: https://github.com/JuliaPackaging/Yggdrasil/pull/7479 SS 7.2 (GPU): https://github.com/JuliaPackaging/Yggdrasil/pull/7480

ViralBShah avatar Oct 03 '23 16:10 ViralBShah