-
Notifications
You must be signed in to change notification settings - Fork 579
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cleanup Ifpack2 RILUK code #1589
Comments
@srajama1 There are two defines, |
@srajama1, @aprokop, HTS is explicitly included in RILUK only in support of Basker; the ifdefs for HTS are nested inside those for Basker. We propose to remove Basker (and so HTS with it) from RILUK; Basker was there only for experiments a while ago. Once that is done, as a nice side effect, HTS will be in LocalSparseTriangularSolver only. |
@ambrad Thanks for the explanation! Out of curiosity, what's the fate of Basker? |
@srajama1 can comment on this more. As I understand it, Basker is highly effective for its intended target of complete factorizations, especially for matrices having a certain structure. It is and will remain available in ShyLU, with I think an Amesos2 interface. But it isn't the best method for a multithreaded incomplete factorization, for which it wasn't designed in the first place. |
@ambrad summarized it well. It works well as complete factorization especially for problems with BTF structure. The experiment to make it work as ILU(T) was not as effective and should be removed from Ifpack2. |
@srajama1 What's BTF? |
I have a patch in-progress, will submit a PR soon. |
Thanks @aprokop. BTW, BTF = block triangular form. A typical matrix for which exploiting BTF makes sense has a range of very small to very large blocks on the diag and dependencies on these blocks that are a tree (and thus give a block tri rather than a general matrix). Rather than factorize such a matrix monolithically, Basker orchestrates threading over factorizations of each block, then doing a solve with the triangular structure. |
Fix #1589. Build/Test Cases Summary Enabled Packages: Ifpack2 Enabled all Forward Packages 0) MPI_RELEASE_DEBUG_SHARED_PT => passed: passed=718,notpassed=0 (11.55 min)
Pushed in c0d440c. |
Fix trilinos#1589. Build/Test Cases Summary Enabled Packages: Ifpack2 Enabled all Forward Packages 0) MPI_RELEASE_DEBUG_SHARED_PT => passed: passed=718,notpassed=0 (11.55 min)
This is primarily concerned with the confusing experimental piece of code that is in Ifpack2's RILUK. This code can be removed.
The text was updated successfully, but these errors were encountered: