[OMPI devel] Please remove me from this list

2016-10-10 Thread Jeremy McCaslin
-- 
JM
___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Re: [OMPI devel] Please remove me from this list

2016-10-10 Thread Thananon Patinyasakdikul
You can do so at https://rfd.newmexicoconsortium.org/mailman/listinfo/devel 
. It’s the same 
place that you registered for this mailing list.

Regards,
Thananon

> On Oct 10, 2016, at 2:11 PM, Jeremy McCaslin  wrote:
> 
> 
> 
> -- 
> JM
> ___
> devel mailing list
> devel@lists.open-mpi.org
> https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

[OMPI devel] use of OBJ_NEW and related calls

2016-10-10 Thread Emani, Murali
Hi,

Could someone help me in understanding where the functions OBJ_NEW/ 
OBJ_CONSTRUCT/ OBJ_DESTRUCT are defined in the source code. Are these specific 
to OpenMPI code base?
Is the assumption correct that these calls are wrappers to create new objects, 
initialize and destroy, similar to any object oriented language.

—
Murali

___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Re: [OMPI devel] use of OBJ_NEW and related calls

2016-10-10 Thread r...@open-mpi.org
See opal/class/opal_object.h

And your assumption is correct :-)


> On Oct 10, 2016, at 1:18 PM, Emani, Murali  wrote:
> 
> Hi,
> 
> Could someone help me in understanding where the functions OBJ_NEW/ 
> OBJ_CONSTRUCT/ OBJ_DESTRUCT are defined in the source code. Are these 
> specific to OpenMPI code base?
> Is the assumption correct that these calls are wrappers to create new 
> objects, initialize and destroy, similar to any object oriented language.
> 
> — 
> Murali
> 
> ___
> devel mailing list
> devel@lists.open-mpi.org
> https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Re: [OMPI devel] use of OBJ_NEW and related calls

2016-10-10 Thread George Bosilca
These macros are defined in opal/class/opal_object.h. We are using them all
over the OMPI code base, including OPAL, ORTE, OSHMEM and OMPI. These calls
are indeed somewhat similar to an OO language, the intent was to have a
thread-safe way to refcount objects to keep them around for as long as they
are necessary.

  George.


On Mon, Oct 10, 2016 at 4:18 PM, Emani, Murali  wrote:

> Hi,
>
> Could someone help me in understanding where the functions OBJ_NEW/
> OBJ_CONSTRUCT/ OBJ_DESTRUCT are defined in the source code. Are these
> specific to OpenMPI code base?
> Is the assumption correct that these calls are wrappers to create new
> objects, initialize and destroy, similar to any object oriented language.
>
> —
> Murali
>
>
> ___
> devel mailing list
> devel@lists.open-mpi.org
> https://rfd.newmexicoconsortium.org/mailman/listinfo/devel
>
___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Re: [OMPI devel] use of OBJ_NEW and related calls

2016-10-10 Thread Emani, Murali
Thanks for the clarification Ralph and George.

—
Murali


From: devel 
mailto:devel-boun...@lists.open-mpi.org>> on 
behalf of George Bosilca mailto:bosi...@icl.utk.edu>>
Reply-To: Open MPI Developers 
mailto:devel@lists.open-mpi.org>>
Date: Monday, October 10, 2016 at 2:18 PM
To: Open MPI Developers 
mailto:devel@lists.open-mpi.org>>
Subject: Re: [OMPI devel] use of OBJ_NEW and related calls

These macros are defined in opal/class/opal_object.h. We are using them all 
over the OMPI code base, including OPAL, ORTE, OSHMEM and OMPI. These calls are 
indeed somewhat similar to an OO language, the intent was to have a thread-safe 
way to refcount objects to keep them around for as long as they are necessary.

  George.


On Mon, Oct 10, 2016 at 4:18 PM, Emani, Murali 
mailto:ema...@llnl.gov>> wrote:
Hi,

Could someone help me in understanding where the functions OBJ_NEW/ 
OBJ_CONSTRUCT/ OBJ_DESTRUCT are defined in the source code. Are these specific 
to OpenMPI code base?
Is the assumption correct that these calls are wrappers to create new objects, 
initialize and destroy, similar to any object oriented language.

—
Murali


___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel

Re: [OMPI devel] use of OBJ_NEW and related calls

2016-10-10 Thread Gilles Gouaillardet

Murali,


please note that OBJ_NEW is the macro that allocates (e.g. malloc) and 
initializes an object


among other things, initialization sets the refcount to 1.

the OBJ_RETAIN and OBJ_RELEASE macro can then be used in order to 
increment and decrement the refcount.


when the refcount drops to 0, the object is destroyed and freed.


the OBJ_CONSTRUCT and OBJ_DESTRUCT macros should only be used to 
initialize/finalize objects


that have already been allocated.


bottom line, in order to free an object allocated with OBJ_NEW, simply 
OBJ_RELEASE it,


and do *not* try OBJ_DESTRUCT it


Cheers,

Gilles

On 10/11/2016 6:24 AM, Emani, Murali wrote:

Thanks for the clarification Ralph and George.

—
Murali


From: devel > on behalf of George Bosilca 
mailto:bosi...@icl.utk.edu>>
Reply-To: Open MPI Developers >

Date: Monday, October 10, 2016 at 2:18 PM
To: Open MPI Developers >

Subject: Re: [OMPI devel] use of OBJ_NEW and related calls

These macros are defined in opal/class/opal_object.h. We are using 
them all over the OMPI code base, including OPAL, ORTE, OSHMEM and 
OMPI. These calls are indeed somewhat similar to an OO language, the 
intent was to have a thread-safe way to refcount objects to keep them 
around for as long as they are necessary.


  George.


On Mon, Oct 10, 2016 at 4:18 PM, Emani, Murali > wrote:


Hi,

Could someone help me in understanding where the functions
OBJ_NEW/ OBJ_CONSTRUCT/ OBJ_DESTRUCT are defined in the source
code. Are these specific to OpenMPI code base?
Is the assumption correct that these calls are wrappers to create
new objects, initialize and destroy, similar to any object
oriented language.

—
Murali


___
devel mailing list
devel@lists.open-mpi.org 
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel





___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel


___
devel mailing list
devel@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/devel