[MPI3-IO] New MPI-IO routines

Mohamad Chaarawi chaarawi at hdfgroup.org
Thu May 24 13:39:47 CDT 2012


Hi all,

We would like to get a discussion going on adding new routines to the 
standard that would support non-blocking but ordered access routines, 
and non-blocking ordered file manipulation routines. They would be two 
separate tickets but they share similar semantics.

So basically what we would like is that when we call:
1) iwrite_at()
2) iread_at()
3) iwrite_at()
...
4) waitall()

We would like to see the data accessed as if the calls were blocking. 
This could translate to something like:
iwrite_at()
iwait()
iread_at()
iwait()
iwrite_at()
iwait()

There is ofcourse no such thing as iwait, but you get the idea :-)

Our use case for this is the SWMR functionality that is being worked on, 
where the non-blocking version would require the MPI library to remember 
the order in which the operations were called; otherwise I don't see how 
we can enforce this ordering and at the same time keep the entire I/O 
access nonblocking.
We probably need to rename the routines (something other than the i 
prefix) because the semantics are different from the current 
non-blocking routines. Maybe aread/awrite (a for asynchronous).

Another feature we are considering is the non-blocking file manipulation 
routines. Similarly to the semantics described above, the library needs 
to remember the order they are called.
iopen
iset_view
iwrite
iclose
...
waitall()

Again since the semantics are different in the way other immediate 
routines are defined, we need to reconsider the naming.

Any thoughts?

Thanks,
Mohamad




More information about the mpiwg-io mailing list