On Mon, Jul 06, 2009 at 11:39:59AM +0200, Manuel Holtgrewe wrote:
> 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();

why the +1 ?  what's local_n in the first place?

> 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.

I think you're OK here.  What are you seeing?  Is this NFS?

==rob

-- 
Rob Latham
Mathematics and Computer Science Division
Argonne National Lab, IL USA

Reply via email to