On Sat, 19 Dec 2009, Jeff Squyres wrote:
No, sorry -- there are no "buffered" variants of the MPI_FILE_* functions like there are
with point-to-point communications. So when you do MPI_FILE_WRITE (for example), it'll be directly
using the buffer that you pass to it (which is almost always what you want, anyway --
"buffered" modes of communication just force an extra copy, and therefore potentially
lower performance).
That being said, if you need an extra copy so that you can start a
non-blocking file operation and then free the old buffer, then you can
make a copy yourself and allow the original buffer to be freed.
Thanks. So in an asynchronous write, the old buffer would only be
available after the I/O ended. So maybe I really need to think to set some
process aside just for I/O...
Ricardo Reis
'Non Serviam'
PhD candidate @ Lasef
Computational Fluid Dynamics, High Performance Computing, Turbulence
http://www.lasef.ist.utl.pt
Cultural Instigator @ Rádio Zero
http://www.radiozero.pt
Keep them Flying! Ajude a/help Aero Fénix!
http://www.aeronauta.com/aero.fenix
http://www.flickr.com/photos/rreis/