I would appreciate someone with experience with MPI-IO look at the simple fortran program gzipped and attached to this note. It is imbedded in a script so that all that is necessary to run it is do: 'testio' from the command line. The program generates a small 2-D input array, sets up an MPI-IO environment, and write a 2-D output array twice, with the only difference being the displacement arrays used to construct the indexed datatype. For the first write, simple monotonically increasing displacements are used, for the second the displacements are 'shuffled' in one dimension. They are printed during the run.
For the first case the file is written properly, but for the second the program hangs on MPI_FILE_WRITE_AT_ALL and must be aborted manually. Although the program is compiled as an mpi program, I am running on a single processor, which makes the problem more puzzling. The program should be relatively self-explanatory, but if more information is needed, please ask. I am on an 8 core Xeon based Dell workstation running Scientific Linux 5.5, Intel fortran 12.0.3, and OpenMPI 1.5.3. I have also attached output from 'ompi_info'. T. Rosmond
testio.gz
Description: GNU Zip compressed data
info_ompi.gz
Description: GNU Zip compressed data