[OMPI devel] v1.5 .so version numbers

2010-06-03 Thread Jeff Squyres
SHORT VERSION: We broke ABI from the 1.4 series to the v1.5 series.  I propose 
changing all the libtool .so version numbers as shown below to enforce that 
break.  Can someone sanity check this?

Index: VERSION
===
--- VERSION (revision 23242)
+++ VERSION (working copy)
@@ -79,12 +79,12 @@
 # Version numbers are described in the Libtool current:revision:age
 # format.

-libmpi_so_version=0:2:0
-libmpi_cxx_so_version=0:0:0
-libmpi_f77_so_version=0:0:0
-libmpi_f90_so_version=0:0:0
-libopen_rte_so_version=0:0:0
-libopen_pal_so_version=0:0:0
+libmpi_so_version=1:0:0
+libmpi_cxx_so_version=1:0:0
+libmpi_f77_so_version=1:0:0
+libmpi_f90_so_version=1:0:0
+libopen_rte_so_version=1:0:0
+libopen_pal_so_version=1:0:0

 # "Common" components install standalone libraries that are run-time
 # linked by one or more components.  So they need to be versioned as
@@ -92,5 +92,5 @@
 # components-don't-affect-the-build-system abstraction.

-libmca_common_sm_so_version=1:0:0
-libmca_common_mx_so_version=0:0:0
-libmca_common_portals_so_version=0:0:0
+libmca_common_sm_so_version=2:0:0
+libmca_common_mx_so_version=1:0:0
+libmca_common_portals_so_version=1:0:0

MORE DETAILS:

libopen_rte.so now wholly includes libopen_pal.so, and libmpi.so wholly 
includes libopen_rte.so (and therefore also libopen_pa.so).  This was done for 
complex reasons -- the quick explanation is that is sucks because it makes us 
break ABI right now, but it puts us in a better position for ABI compatibility 
in the future.  I wish that we had figured this out back at v1.3.2 when we 
introduced ABI compatibility, but we didn't -- so here we are.  Cope.

To enforce this ABI break, I propose setting the libtool version numbers of all 
of our shared libraries to 1:0:0.  This means that apps linked against v1.5 
libmpi.so will *NOT* be able to use libmpi.so from the v1.3 or v1.4 series.  
They will have to relink (at a minimum).

Resetting *all* the library numbers to 1:0:0 is probably overkill (e.g., 
there's probably little gained by resetting the common libraries to 1:0:0), but 
it seems like an "ok" thing to do -- reset all the numbers across the board for 
minimum confusion.

Can someone sanity check my rationale here?  I'm not tied to this scheme; it 
just seems simple and, while probably being a bit overly broad, makes the 
change easy to describe and consistent.

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




[OMPI devel] 1.5rc1 has been released

2010-06-03 Thread Jeff Squyres
Please beat it in MTT up so that we can get it into shape for final release (we 
still need to update NEWS to indicate what has really changed):

http://www.open-mpi.org/software/ompi/v1.5/

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




Re: [OMPI devel] RFC: System V Shared Memory for Open MPI

2010-06-03 Thread Samuel K. Gutierrez

On Jun 2, 2010, at 11:58 AM, Samuel K. Gutierrez wrote:


Good point - I forgot about that.

--
Samuel K. Gutierrez
Los Alamos National Laboratory

On Jun 2, 2010, at 11:40 AM, Jeff Squyres wrote:

Don't forget that the RML is also used to broadcast the success/ 
failure of the creation of the shared memory segment.


If the RML goes away, be sure that you can still determine that  
without hanging.


Personally, I still don't see the problem with using the RML stuff...


On Jun 2, 2010, at 1:07 PM, Samuel K. Gutierrez wrote:


Hi George,

That may work - I'll try it.

Thanks!

--
Samuel K. Gutierrez
Los Alamos National Laboratory

On Jun 2, 2010, at 10:59 AM, George Bosilca wrote:


How about ftok ? The init function takes a file_name as argument,
and this file name is unique per instance of the shared memory
region we want to create. We can use this file name with ftok to
create a unique key_t that can be used by shmget to retrieve the
shared memory identifier.

george.


Hi George,

I think ftok brings us back to the atomic file creation problem.  In  
particular, ftok requires pathname be an existing file.  As it stands,  
this file is created by the common sm module.


--
Samuel K. Gutierrez
Los Alamos National Laboratory



On Jun 2, 2010, at 11:53 , Samuel K. Gutierrez wrote:


On Jun 2, 2010, at 8:49 AM, Jeff Squyres wrote:


On Jun 2, 2010, at 10:44 AM, George Bosilca wrote:


Not sure what you mean here.  common/sm may create new shmem
segments at any time (e.g., during coll sm).  The RML message
exchange is to ensure that only 1 process creates and
initializes the segment and then all the others just attach  
to it.


Absolutely not! The RML messaging is not about initializing the
shared memory segment. As stated on my original text it has only
one purpose: to ensure the file used by mmap is created
atomically. The code for Windows do not exchange any RML  
messages

as the function to allocate the shared memory region provided by
the OS is atomic (exactly as the sysv one).


I thought that Sam said that it was important that only 1 process
shmctl/IPC_RMID...?


Hi George,

We are using RML messaging in the sysv code to exchange the shared
memory ID (generated by exactly one process).  I'm not sure how we
would go about passing along the shared memory ID without RML, but
any ideas are greatly appreciated.

Thanks,
--
Samuel K. Gutierrez
Los Alamos National Laboratory



--
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel



___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel




--
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel




[OMPI devel] mpi_comm_spawn

2010-06-03 Thread KHALDI Dounia

Hello,
I want to create a process y from a process x( the master for example). 
then, i want to communicate between y and another processes in the group 
of x (between child and his uncles :) )
i have tried to use mpi_comm_connect and mpi_connect_accept, but that 
concemt requiere taht there is no relationship child/parent


The problem is others processes don t know the inter communicator (out 
of mpi_comm_spawn)


I want to communicate child process and all other processes , not only 
its parent :)


thanks in advance