AW: non contiguous data IO

Seiss, Guntram Seiss at Hamburg.BAW.DE
Mon Oct 16 03:28:50 CDT 2006


 
Dear Mr. Latham

Now I have developed a solution of my own for my test problem:

To write more than one block of data into one record of a field with one dimension being the record number, I do as much calls to nfmpi_put_vara_real as there are blocks per process to write (in maximum). This means, process 0 has 3 records, so I call it three times to write the whole record. For the other processes (1,2,3) I distribute one block on to two or three calls, to get every process writing something on each call.

This is not a very elegant way, but it works, in principle. But I have recognized, it's a better solution to get all data of a process sorted contiguous inside one bloc of the record, before writing them, to avoid multiple calls of nfmpi_put_vara_real.

Guntram 

-----Ursprüngliche Nachricht-----
Von: owner-parallel-netcdf at mcs.anl.gov [mailto:owner-parallel-netcdf at mcs.anl.gov] Im Auftrag von Robert Latham
Gesendet: Montag, 2. Oktober 2006 18:18
An: Seiss, Guntram
Cc: parallel-netcdf at mcs.anl.gov
Betreff: Re: non contiguous data IO

On Mon, Oct 02, 2006 at 02:41:35PM +0200, Seiss, Guntram wrote:
...
> The fileviews are constructed as follows:
>              P0 |0xxxx0000xxxxxxxxxx00xxxx|  
>              P1 |x1111xxxx1111xxxxxxxxxxxx| 
>              P2 |xxxxxxxxxxxxx222222xxxxxx|
>              P3 |xxxxxxxxxxxxxxxxxxxxx3333|
>  
>           total |0111100001111222222003333|
> 
>  Now I would like to realize the same in pnetCDF. Does anyone know 
> about examples, how I can use user defined MPI-datatypes to describe 
> such pattern like the above one?







More information about the parallel-netcdf mailing list