[petsc-dev] Implementing longer pipelines with VecDotBegin and VecDotEnd
Smith, Barry F.
bsmith at mcs.anl.gov
Thu Feb 15 10:48:46 CST 2018
Wim,
Both approaches are acceptable. For expediency making a pull request with the current code is probably best.
How dramatic a change is needed in the structure of the VecDotBegin/End constructs? Enough that it is best to start with an entirely new design?
Thanks
Barry
> On Feb 15, 2018, at 10:30 AM, Wim Vanroose <wim at vanroo.se> wrote:
>
> Dear All,
>
> We have a working prototype of pipe(l) CG in Petsc, where dot products are taking multiple iterations to complete. Due to the limitations of VecDotBegin we had to used MPI_WAIT and MPI_Iallreduce.
> A high level overview of the communication is given in the figure. The preprint of the paper is https://arxiv.org/abs/1801.04728
>
> How should we proceed? Can we contribute this routine to KSP while it uses primitive MPI calls?
> Or should we interact with petsc-dev to see if we can redesign VecDotBegin and VecDotEnd
> to be able to handle these cases? And then rewrite the prototype with these new calls?
>
> Can we talk about this at SIAM PP18?
>
> Wim Vanroose
>
>
>
>
>
>
More information about the petsc-dev
mailing list