It adds KernelAbstractions.jl, Adapt.jl, Metis.jl, and LightGraphs.jl as a dependency. LightGraphs.jl should be replaced with Graphs.jl.
I also added Krylov.jl just to quickly run test/blockjacobi.jl for now.
I am unfamiliar with the general linear solver API in Krylov.jl and here, so I think we have to adapt that a bit. I see each precondition has a ldiv!, which this one does not have for now. Also. I don't use @eval and BlasTypes.
If we you want we could move all the backend code into extensions. I think it would make sense as someone who wants to use preconditioners for Krylov.jl might not want to pull in all the GPU backends.
This is just a draft.
It adds
KernelAbstractions.jl
,Adapt.jl
,Metis.jl
, andLightGraphs.jl
as a dependency.LightGraphs.jl
should be replaced withGraphs.jl
.I also added
Krylov.jl
just to quickly runtest/blockjacobi.jl
for now.ldiv!
, which this one does not have for now. Also. I don't use@eval
andBlasTypes
.@amontoison Let me know what you think.