Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: [OMPI users] Parallel I/O Usage
From: Manuel Holtgrewe (holtgrewe_at_[hidden])
Date: 2009-07-06 05:39:59


Hi,

do I understand the MPI-2 Parallel I/O correctly (C++)?

After opening a file with MPI::File::Open, I can use Read_at on the
returned file object. I give offsets in bytes and I can perform random
access reads from any process at any point of the file without
violating correctness (although the performance might/should/will be
better using views):

MPI::File f = MPI::File::Open(MPI::COMM_WORLD, filename, MPI::MODE_RDONLY,
                              MPI::INFO_NULL);
// ...
MPI::Offset pos_in_file = ...;
// ...
f.Read_at(pos_in_file, buffer, local_n + 1, MPI::INTEGER);
// ...
f.Close();

I have some problems with the program reading invalid data and want to
make sure I am actually using parallel I/O the right way.

Thanks,
-- Manuel Holtgrewe