Hal,

Based on http://www.mpi-forum.org/docs/mpi-20-html/node43.htm#Node43. 

Only implementations conforming to MPI1.1 are allowed to require passing
the actual values provided to main, MPI-2 does not.

I don't know what kind of compatibility we want to maintain wrt
MPI1,(afaic, stuff that is in the range 2.x-3.x would be fine) but that
change would only concern a subset of MPI 1.1 implementations, and
passing the arguments would still be allowed.

But I guess the main question is: do we want to deal with 3 versions of
the MPI standard ?

Also, if Boost.MPI is presented as the successor of the C++ bindings,
and if I am correct in assuming that the MPI::Init function always
provided both versions, it would be weird to maintain a pre-existent
limitation.


Alain



On Thu, 2012-11-29 at 08:33 -0600, Hal Finkel wrote:
> Alain,
> 
> I thought the system was arranged as it was because some MPI implementations 
> pass special arguments from the runtime system to the MPI library via special 
> command-line arguments. Passing the args to MPI_Init allows the library to 
> intercept those arguments (and erase them from the arg list seen by the rest 
> of the program). I don't know if any real implementations work this way, but 
> we may want to be careful about discouraging passing the real arg variables 
> to MPI_Init.
> 
>  -Hal
> 
> ----- Original Message -----
> > From: "Matthias Troyer" <[email protected]>
> > To: "alain miniussi" <[email protected]>, "Discussion of Boost.MPI 
> > development" <[email protected]>
> > Sent: Thursday, November 29, 2012 5:17:35 AM
> > Subject: Re: [Boost-mpi] No arg init
> > 
> > Hi Alain,
> > 
> > You can indeed provide no arg initialization and just fake arguments
> > for MPI-1.
> > 
> > Matthais
> > 
> > On Nov 29, 2012, at 12:13 PM, Alain O Miniussi
> > <[email protected]> wrote:
> > 
> > > 
> > > Hi,
> > > 
> > > While working on the thread issue, a question arises regarding the
> > > no
> > > arg initialization.
> > > 
> > > I understand that  some MPI1.x might not allow it, but should
> > > BOOST.MPI
> > > refect that choice ? Why can't we just pass dummy empty (argc,argv)
> > > to
> > > MPI_Init(_thread) since, after all, no specific values are required
> > > ?
> > > 
> > > This would simplify our API, and I do not see any down side.
> > > 
> > > Any though ?
> > > 
> > > Thanks
> > > 
> > > --
> > > Alain Miniussi
> > > Responsable Tech. Centre de Calcul Haute Performance
> > > Obs. de la Côte d'Azur |Mont Gros: +33 4 92 00 30 09
> > > BP 4229                |Sophia :   +33 4 83 61 85 44
> > > 06304 Nice Cedex 4     |https://crimson.oca.eu
> > > 
> > > _______________________________________________
> > > Boost-mpi mailing list
> > > [email protected]
> > > http://lists.boost.org/mailman/listinfo.cgi/boost-mpi
> > 
> > _______________________________________________
> > Boost-mpi mailing list
> > [email protected]
> > http://lists.boost.org/mailman/listinfo.cgi/boost-mpi
> > 
> 

-- 
Alain Miniussi
Responsable Tech. Centre de Calcul Haute Performance
Obs. de la Côte d'Azur |Mont Gros: +33 4 92 00 30 09
BP 4229                |Sophia :   +33 4 83 61 85 44
06304 Nice Cedex 4     |https://crimson.oca.eu

_______________________________________________
Boost-mpi mailing list
[email protected]
http://lists.boost.org/mailman/listinfo.cgi/boost-mpi

Reply via email to