hypre
hypre copied to clipboard
[Multivec 5/5]: Parallel SpMV updates
This is part of a series of PRs for enabling BoomerAMG to be applied to multivectors.
Changes in this PR:
- Extend
hypre_ParCSRCommPkgwith a new member (num_components) that allows communicating several vector components at once. - Add
hypre_ParCSRCommPkgCreateAndFillfor allocating and filling a communication package with its data. This function makes it easier to propagate changes in thecommPkgthroughout hypre - Improve the performance of
ParCSRMatrixMatVecandParCSRMatrixMatvecTfor multivectors. The idea is to pack vector components together when doing communication.
Note: other multivec branches have been merged into this one since some of the functionalities added here depend on the others.
Regression tests:
- [ ] Tux
- [ ] Lassen