I have a fortran MPI code that uses a domain decomposition in 2 of the three spatial indices. I would like to store the data in usual x,y,z order in a file (i.e. u(i,j,k)) but for performance reasons the domain decomposition is performed over the i, and j indeces (x, and y directions). Because of this, In memory on each MPI rank the indeces are permuted; k is first, followed by i and then j. Is there a way to perform the index permutation via an appropriate file space and memspace selection/specification [u(i,j,k) <=> u(k,i,j)] or do I need to create a do loop (over k) to accomplish this data transfer. Alternatively I could use the Fortran RESHAPE intrinsic on the buffer but this will likely cause efficiency problems in terms of memory and possibly clock cycles.
The user manual seems to indicate that this is possible, but there is no clear example with code showing how this is done. It just states that the default is to transfer elements in array element order. Thanks, Izaak Beekman =================================== (301)244-9367 UMD-CP Visiting Graduate Student Aerospace Engineering [email protected] [email protected] _______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
