Re: [petsc-dev] PetscSFFetchAndOpBegin_Window

2015-03-11 Thread Jeff Hammond
>> Permission to ask potentially dumb questions? > > Not dumb at all. Thanks. I was scared that Barry would tell me I should quit my job (again) if I asked a dumb question :-) And the high-level goal that brought me here was to understand PETSc's use of MPI-3 features, including RMA. If there's

Re: [petsc-dev] PetscSFFetchAndOpBegin_Window

2015-03-11 Thread Jed Brown
Jeff Hammond writes: > Permission to ask potentially dumb questions? Not dumb at all. > 1) Implementing atomic read-modify-write using > Lock->Get->Accumulate->Unlock is W.R.O.N.G. Get and Accumulate are > NOT guaranteed to be ordered within any epoch. Ever. You appear to > be leveraged the

[petsc-dev] PetscSFFetchAndOpBegin_Window

2015-03-11 Thread Jeff Hammond
Permission to ask potentially dumb questions? In this code (src/vec/is/sf/impls/window/sfwindow.c in git master as of 7fb8eca36577947f0d4ded035522334534bc7e38): static PetscErrorCode PetscSFFetchAndOpBegin_Window(PetscSF sf,MPI_Datatype unit,void *rootdata,const void *leafdata,void *leafupdate,MP