This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [4.7, RFC, Fortran] Coarray: Moving towards real parallelization


> De: "Richard Guenther" <richard.guenther@gmail.com>
> Para: "Tobias Burnus" <burnus@net-b.de>
> Enviado: Jueves, 3 de Marzo 2011 6:55:04
> Asunto: Re: [4.7, RFC, Fortran] Coarray: Moving towards real parallelization
>
>> Ralf Wildenhues wrote:
>>
>> The library will depend on the MPI installation, obviously.
>> You can make a new target directory and overwrite CC with MPICC
>> for that directory. For choosing the latter, the AX_MPI macro from
>> the Autoconf Macro Archive can help. (I can help with the configure
>> setup if needed, just not timely).
>>
>> OK. Though as it should be a relatively small library with little
>> dependency, I assume many users/system administrators will compile
>> it separately.
> 
> You will definitely need to wrap the part of the MPI interface you are
> using.
>
> I think unconditionally using a static library for this is probably
> best, both for performance and binary deployment reasons (ok, HPC 
> users always link statically anyways ...).
> 
> That said, don't emit calls following the MPI API but instead use a
> (possibly more optimization friendly) gfortran private API that wraps
> MPI.
>
> Richard.
>

More comments ...

Would have to be careful in how it is implemented. Unfortunately, MPI 
is not binary-compatible across implementations, and will not be easy 
to use MPI in a generic way.

Ideally, Gfortran could allow users to choose the implementation of MPI 
to use in their applications, e.g. Fedora have both MPICH2 and OpenMPI 
some users use one, others use the other, etc.

So there should be some mechanism for users to select which MPI 
implementation used (ideally at runtime rather than compile time).
In that case, Gfortran need a further layer to make a "wrap"of MPI.

Thus, at runtime, the user could select a dynamic library 
(shared library) and through it access to MPI.

These shared libraries must be available for each implementation of 
MPI that want to support, through an environment variable or some 
similar mechanism so that when the Fortran program is executed, the 
appropriate dynamic library is selected and loaded.


Regards,

Jorge.

---------------
CIMEC (INTEC/CONICET-UNL)
Predio CONICET-Santa Fe
Colectora RN 168 Km 472, Paraje El Pozo
3000 Santa Fe, Argentina
Tel: +54-342-4511594 (ext 1011)
Tel/Fax: +54-342-4511169
--


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]