-
Notifications
You must be signed in to change notification settings - Fork 75
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Just notice this nice community effort on GraphBLAS-based algorithms.
I am curious if there are any attempts & interests on translating a complete AMG solver to GraphBLAS language? Some potential benefits I can think of:
- Many of AMG coarsening schemes are based on variants of maximal independent set, such as the PMIS scheme in PyAMG and Hypre. All existing implementations are vertex-based. Switching to a linear-algebra (GraphBLAS) based view might improve parallel efficiency and reduce code complexity. Since Luby's parallel MIS algorithm is already implemented GraphBLAS, as well as distance-2 MIS, adapting them for the AMG coarsening variants should be doable (although might require some mental struggling for certain AMG variants)
- The rest of AMG procedure mostly contains SpMV (restriction
R*x, prolongationP*x) and SpGEMM (garlekin productR*A*P) -- such operations are commonly used and highly optimized in GraphBLAS. The solver expressed in this way can be ported to multi-threaded, GPU, or distributed environment depending on the GraphBLAS backend used, without having to rewrite the algorithm-level code.
I searched on the web, but did not find any work in such direction. Does anyone know any attempts on this? Or there are some instrinsic mathematical/software difficulties?
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request