Re: [mpich-discuss] logical to physical in collective I/O
On 09/15/2014 01:11 PM, Jaln wrote:
Hi, In MPI-IO, when doing collective I/O, how does each process translate the logical access information into the byte offset list? Which file does this work?
There are a couple parts here - the MPI datatype describing the memory layout or the file view - the actual I/O ROMIO will flatten the datatype into offset-list pairs. So for a simple example MPI_TYPE_CONTIGUOUS(100, MPI_BYTE, &contig) will get flattened into (0, 100) this happens in ADIOI_Flatten_datatype: http://git.mpich.org/mpich.git/blob/HEAD:/src/mpi/romio/adio/common/flatten.... The collective I/O routines will exchange these offset-length lists to bulid up an I/O schedule. That happens in a bunch of functions, but one example is in ADIOI_GEN_WriteStrided: http://git.mpich.org/mpich.git/blob/HEAD:/src/mpi/romio/adio/common/ad_write... ==rob -- Rob Latham Mathematics and Computer Science Division Argonne National Lab, IL USA
participants (1)
-
Rob Latham