Boost logo

Boost-MPI :

Subject: Re: [Boost-mpi] No arg init
From: Matthias Troyer (troyer_at_[hidden])
Date: 2013-01-28 17:55:29


Hi Alain,

Thank you very much! I'll try to apply it tomorrow. I sometimes prefer the throwing ctor version since my codes often require a certain threading level if they are multi-threaded, but I can add that later.

Matthias

On Jan 28, 2013, at 11:28 AM, Alain O Miniussi <alain.miniussi_at_oca.eu> wrote:

> Oups, forgot to send it to the list.
>
> =================================
>
> So, here is next patch, I think it integrates all the discussions except
> for the throwing ctor, which can be added later if a consensus is
> reached.
>
> I did modify the documentation, but I do not know how to test those
> changes. They are quite simple, but still...
>
> As for the throwing ctors, my position was that I do not see a strong
> argument in their favor, and would like to see what the user are saying
> (as a user, they would be of no use, I'd like to get 'multiple', but
> will need to deal with the other possibilities anyway, so throwing is
> not a option. But that's just a sample of one).
>
> Regards
>
>
> On Thu, 2013-01-17 at 08:27 -0700, Matthias Troyer wrote:
>> Thank you! I've committed the patch to config.hpp to the trunk and have also updated the documentation.
>>
>> Matthias
>>
>> On Jan 16, 2013, at 4:08 PM, Alain O Miniussi <alain.miniussi_at_oca.eu> wrote:
>>
>>> There is an attached patch with that change.
>>> If it's ok, and once commited, I'll move to the thread init.
>>>
>>>
>>> On Mon, 2012-12-31 at 23:05 +0100, Matthias Troyer wrote:
>>>> On Dec 4, 2012, at 10:53 AM, Alain O Miniussi <alain.miniussi_at_oca.eu> wrote:
>>>>
>>>>> On Thu, 2012-11-29 at 12:55 -0500, Jeremiah Willcock wrote:
>>>>>> On Thu, 29 Nov 2012, Matthias Troyer wrote:
>>>>>>
>>>>>>>
>>>>>>> On Nov 29, 2012, at 5:23 PM, Jeremiah Willcock <jewillco_at_[hidden]> wrote:
>>>>>>>>
>>>>>>>> Another issue with MPI versions is that Boost.MPI currently uses
>>>>>>>> functions such as MPI_Address that have been removed in MPI 3.0. Is
>>>>>>>> that something that should be addressed in the future? I think the
>>>>>>>> replacements for some of them did not exist before MPI 2.0.
>>>>>>>
>>>>>>> A valid point - we will have to provide two implementations depending on
>>>>>>> which version of MPI is present. Is there any standardized macro that
>>>>>>> one an check to determine the MPI version at compile time?
>>>>>>
>>>>>> There are MPI_VERSION and MPI_SUBVERSION, but those are in 2.0 and above
>>>>>> only as well. You can probably use their being undefined to mean that the
>>>>>> implementation does not comply to 2.0. I don't know how many 1.1-only MPI
>>>>>> implementations are around anymore, though; there may not be any still in
>>>>>> use (MPI 2.0 was released in 1997).
>>>>>
>>>>> That's a good point, especially if the "historical" C++ API was not
>>>>> present in 1.1 (which I think it's the case, it's not clear to me if it
>>>>> was introduced in 1.2 or 2.0). Maybe we should only take into
>>>>> consideration 2.0 and 3.0.
>>>>> Also, if some 1.1 only API are still use, how many requires a Boost.MPI
>>>>> interface ?
>>>>>
>>>>> As far as the no arg init is concerned, it seems to me that that
>>>>> - providing them will simplify the API,
>>>>> - even if some 1.1 only MPI are still around, even if some of them have
>>>>> a use for Boost.MPI, even if those do not support a no arg Init, theirs
>>>>> users still have the possibility to provide those arguments anyway.
>>>>>
>>>>> Alain
>>>>
>>>> I checked the implementation and we do have a no arg init for MPI 2.0 or higher since that can be tested by MPI_VERSION. You can also manually define BOOST_MPI_HAS_NOARG_INITIALIZATION to enable it for MPI 1.2 or MPI 1.3 implementations. I assume that this is good enough and we might just want to edit the documentation to make the no arg version the default in the documentation.
>>>>
>>>> Matthias
>>>>
>>>>
>>>
>>> --
>>> 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
>>> <mpiinit-r82503.patch>_______________________________________________
>>> Boost-mpi mailing list
>>> Boost-mpi_at_[hidden]
>>> 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
>
> <mtmpi-82588.patch>_______________________________________________
> Boost-mpi mailing list
> Boost-mpi_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-mpi


Boost-Commit list run by troyer at boostpro.com