Just want to clarify.... H5Dcreate ia a collective call (i.e, all processes have to participate in creation of a sprintf(name,"/node%d",i); dataset). Then each process can write to its own dataset.
Elena ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Elena Pourmal The HDF Group http://hdfgroup.org 1800 So. Oak St., Suite 203, Champaign IL 61820 217.531.6112 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ On Dec 11, 2012, at 10:50 AM, Jonathan Kim wrote: > Hi Suman, > > Parallel HDF5 doesn't support multiple write feature. > So this would result in only one process (out of many) would perform any > writing IO. > (even dset name and data value (indicate process) can be from different > process) > > You may be able to do it by completely serialize writing per process from > create/reopen/close file, but that would defeat the purpose of parallel. > > Jonathan > > On 12/11/2012 12:49 AM, Suman Vajjala wrote: >> Hello All, >> >> I am trying to write a HDF5 file in parallel in a specific format. >> Each rank has variable length data and data of each process has to be >> created as a separate dataset e.g. /data_i (i is the rank). I have used the >> following code but to no success: >> >> /////Code >> data = (int *) malloc(sizeof(int)*dimsf[0]*dimsf[1]); >> for (i=0; i < dimsf[0]*dimsf[1]; i++) { >> data[i] = mpi_rank; >> } >> >> plist_id = H5Pcreate(H5P_FILE_ACCESS); >> H5Pset_fapl_mpio(plist_id, comm, info); >> >> file_id = H5Fcreate(H5FILE_NAME, H5F_ACC_TRUNC, H5P_DEFAULT, plist_id); >> H5Pclose(plist_id); >> >> plist_id = H5Pcreate(H5P_DATASET_XFER); >> H5Pset_dxpl_mpio(plist_id, H5FD_MPIO_INDEPENDENT); >> >> /* >> * Create the dataspace for the dataset. >> */ >> filespace = H5Screate_simple(RANK, dimsf, NULL); >> >> i = mpi_rank; >> sprintf(name,"/node%d",i); >> dset_id = H5Dcreate(file_id, name, H5T_NATIVE_INT, >> filespace,H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); >> >> status = H5Dwrite(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, >> data); >> H5Dclose(dset_id); >> >> Can you please shed light on how to do it? >> >> Regards >> Suman Vajjala >> >> >> >> >> _______________________________________________ >> Hdf-forum is for HDF software users discussion. >> [email protected] >> http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org > > _______________________________________________ > Hdf-forum is for HDF software users discussion. > [email protected] > http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
_______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
