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