[MPI3 Fortran] Sample implementation

Supalov, Alexander alexander.supalov at intel.com
Tue Apr 22 09:33:57 CDT 2008


Thanks. I'd suggest adding some attribute copy/delete functions,
MPI_Request that is sometimes handled differently than other handles
(you'll have them anyway with MPI_ISEND I guess), and MPI_WTIME, as a
"real" function.

MPI_File is a good example of a handle that is a pointer rather than an
integer in MPICH2, but that's probably too far away from the scope of
this prototype.

-----Original Message-----
From: mpi3-fortran-bounces at lists.mpi-forum.org
[mailto:mpi3-fortran-bounces at lists.mpi-forum.org] On Behalf Of Jeff
Squyres
Sent: Tuesday, April 22, 2008 4:24 PM
To: MPI-3 Fortran working group
Subject: [MPI3 Fortran] Sample implementation

We had a short call because it was just Torsten, Jeff, and Craig  
(i.e., one Fortran guy and 2 guys who are interested but not experts).

Craig's going to reach out to the other Fortran experts and ensure  
that we're moving forward.  He's also going to work on a small sample  
implementation to ensure that we're moving in the right direction --  
some small wrappers around a handful of functions the ensure that the  
concepts are right, it works, etc.  With a small enough number of  
functions, keeping them updated with the current ideas and discussion  
shouldn't be too hard.  Additionally, although Craig is likely to do  
this work in Open MPI, the code should be more-or-less portable (i.e.,  
likely with a little bit of work) to other MPI's to test with.

Here's a list of functions that I suggest (others can be included of  
course):

6-function MPI
- MPI_INIT
- MPI_FINALIZE
- MPI_SEND
- MPI_RECV
- MPI_COMM_RANK
- MPI_COMM_SIZE
Some non-blocking functions
- MPI_ISEND
- MPI_IRECV
- MPI_WAITALL
A function with a string
- MPI_GET_PROCESSOR_NAME
Memory pointers
- MPI_ALLOC_MEM
- MPI_FREE_MEM
Varargs
- MPI_PCONTROL
Functions dealing with function pointers
- MPI_COMM_ERRHANDLER_SET
- MPI_COMM_ERRHANDLER_GET

Along with at least the following pre-defined MPI handles (others can  
be included of course):

Basic handles
- MPI_INTEGER
- MPI_COMM_WORLD
"Weird" handles
- MPI_BOTTOM
- MPI_STATUSES_IGNORE
Function pointer handle
- MPI_ERRORS_ARE_FATAL

These should be representative enough of the different kinds of types  
that we need to deal with.

Did I miss anything?

-- 
Jeff Squyres
Cisco Systems

_______________________________________________
mpi3-fortran mailing list
mpi3-fortran at lists.mpi-forum.org
http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-fortran
---------------------------------------------------------------------
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen Germany
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer
Registergericht: Muenchen HRB 47456 Ust.-IdNr.
VAT Registration No.: DE129385895
Citibank Frankfurt (BLZ 502 109 00) 600119052

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.





More information about the mpiwg-fortran mailing list