This is due to the interface defined for MPI_File_write that specifies
an integer for the length. The positive value of an integer are coded
in hexadecimal from 0000 0000 to 7FFF FFF and negative values are coded
from 8000 0000 to FFFF FFFF.
(7FFF FFFF is exactly 2^31-1).
Pascal
Ricardo Reis a écrit :
On Wed, 17 Nov 2010, Pascal Deveze wrote:
I think the limit for a write (and also for a read) is 2^31-1 (2G-1).
In a C program, after this value, an integer becomes negative. I
suppose this is also true in
Fortran. The solution, is to make a loop of writes (reads) of no more
than this value.
Is that MPI-IO specific? I remember that when using FFTW they ask for
using INTEGER(8) for the returning handle. This is used has a pointer
interface with the library and (8) will be equivalent to a 64 bit
pointer (sort of, sorry if I am not being exact).
Anyway, if I have no problems writing Big files with normal Fortran
shouldn't this behaviour be found with MPI-IO? And, more to the point,
if not, shouldn't it be documented somewhere?
Does anyone knows if this carries over to other MPI implementations
(or the answer is "download, try it and tell us?")
best,
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/
contacts: gtalk: kyriu...@gmail.com skype: kyriusan
< sent with alpine 2.00 >
------------------------------------------------------------------------
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users