In general, files written by MPI_File_write (and friends) are only
guaranteed to be readable by MPI_File_read (and friends). So if you
have an ASCII input file, or even a binary input file, you might need
to read it in with traditional/unix file read functions and then write
it out with MPI_File_write. Then your parallel application will be
able to use the various MPI_File_* functions to read the file at run-
time. Hence, there's no real generic <non-MPI-file> -> <MPI-file>
convertor; you'll need to write your own that is specific to your data.
On Apr 14, 2009, at 6:50 PM, Jovana Knezevic wrote:
> > Hi Jovana,
> > 825307441 is 0x31313131 in base 16 (hexadecimal), which is the
> > `1111' in ASCII. MPI_File_read reads in binary values (not ASCII)
> > as the standard functions read(2) and fread(3) do.
> > So, your program is fine; however, your data file (first.dat) is
> > Cheers,
> > Shaun
> Thank you very much, Shaun! Ok, now I realise it's really stupid that
> I was trying so hard to get the result that I wanted :-)
> Well, it seems it's not a problem if I'm just reading with
> MPI_File_read and writing with MPI_File_write, but if I try to do some
> calculations with the data I read, it doesn't work... Do you maybe
> have some idea how one can deal with this ( I have an input file for
> my project - much larger code than the sample I gave last time -
> consisting of integers, doubles, characters and so on... Maybe it's a
> silly question, but can I convert my input file somehow into something
> so that it works? :-) Any ideas would help.
> Thanks again.
> users mailing list