Re: [OMPI devel] ob1 and req->req_state

2008-06-24 Thread Rainer Keller
On Montag, 23. Juni 2008, Shipman, Galen M. wrote: > Oh, I see, you are confusing the req_state on the OMPI request with > the req_state on the PML request. > > The ompi request state is for persistent requests, the PML request > state is not and does not use that enum. So, the req_state in

Re: [OMPI devel] ob1 and req->req_state

2008-06-23 Thread Shipman, Galen M.
On Jun 23, 2008, at 5:51 PM, Jeff Squyres wrote: Ah -- I see -- we have 2 different fields with the same name (just different places within the struct hierarchy) with different meanings. That was a good idea. ;-) exactly Thanks; that actually helps understand things quite a bit. On

Re: [OMPI devel] ob1 and req->req_state

2008-06-23 Thread Jeff Squyres
Ah -- I see -- we have 2 different fields with the same name (just different places within the struct hierarchy) with different meanings. That was a good idea. ;-) Thanks; that actually helps understand things quite a bit. On Jun 23, 2008, at 5:45 PM, Shipman, Galen M. wrote: Oh, I see,

Re: [OMPI devel] ob1 and req->req_state

2008-06-23 Thread Shipman, Galen M.
Oh, I see, you are confusing the req_state on the OMPI request with the req_state on the PML request. The ompi request state is for persistent requests, the PML request state is not and does not use that enum. - Galen On Jun 23, 2008, at 5:18 PM, Jeff Squyres wrote: On Jun 23, 2008, at

Re: [OMPI devel] ob1 and req->req_state

2008-06-23 Thread Brian W. Barrett
On Mon, 23 Jun 2008, Jeff Squyres wrote: On Jun 23, 2008, at 3:17 PM, Brian W. Barrett wrote: Just because it's volatile doesn't mean that adds are atomic. There's at least one place in the PML (or used to be) where two threads could decrement that counter at the same time. With atomics,

Re: [OMPI devel] ob1 and req->req_state

2008-06-23 Thread Jeff Squyres
On Jun 23, 2008, at 3:17 PM, Brian W. Barrett wrote: Just because it's volatile doesn't mean that adds are atomic. There's at least one place in the PML (or used to be) where two threads could decrement that counter at the same time. With atomics, then both subtracts should occur, right?

Re: [OMPI devel] ob1 and req->req_state

2008-06-23 Thread Brian W. Barrett
Just because it's volatile doesn't mean that adds are atomic. There's at least one place in the PML (or used to be) where two threads could decrement that counter at the same time. Brian On Mon, 23 Jun 2008, Jeff Squyres wrote: I see in a few places in ob1 we do things like this:

[OMPI devel] ob1 and req->req_state

2008-06-23 Thread Jeff Squyres
I see in a few places in ob1 we do things like this: OPAL_THREAD_ADD32(>req_state, -1); Why do we do this? req_state is technically an enum value, so we shouldn't be adding/subtracting to it (granted, it looks like the enum values were carefully chosen to allow this). Additionally,