[petsc-dev] Implementing longer pipelines with VecDotBegin and VecDotEnd
Jed Brown
jedbrown at mcs.anl.gov
Thu Mar 23 23:23:21 CDT 2017
Barry Smith <bsmith at mcs.anl.gov> writes:
> Jed,
>
> Ok I buy what you are saying as a possible solution but now I am
> wondering why you need the request argument. Instead, as soon as
> you hit the first End or PetscCommSplitReductionBegin why don't
> you start a new batch (internally) that all new Begin() calls
> feed into? Then each End call just checks through the previous
> (still incompleted) batches to find its begin partner
How is the "begin partner" identified?
> (or we can require always first in, first out). Thus your first
> VecNormEnd(Y, would match the first begin with Y posted and your
> second would match the second.
VecNormBegin(X,&norm);
function(X);
VecNormEnd(X,&norm);
would be broken if function() uses split reductions.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20170323/ce2cc203/attachment.sig>
More information about the petsc-dev
mailing list