|
H5Part
1.6.6
|
Functions | |
| h5part_int64_t | H5Block3dGetPartitionOfProc (H5PartFile *f, const h5part_int64_t proc, h5part_int64_t *i_start, h5part_int64_t *i_end, h5part_int64_t *j_start, h5part_int64_t *j_end, h5part_int64_t *k_start, h5part_int64_t *k_end) |
| h5part_int64_t | H5Block3dGetProcOf (H5PartFile *f, h5part_int64_t i, h5part_int64_t j, h5part_int64_t k) |
| h5part_int64_t | H5Block3dGetReducedPartitionOfProc (H5PartFile *f, h5part_int64_t proc, h5part_int64_t *i_start, h5part_int64_t *i_end, h5part_int64_t *j_start, h5part_int64_t *j_end, h5part_int64_t *k_start, h5part_int64_t *k_end) |
| h5part_int64_t | H5BlockDefine3DChunkDims (H5PartFile *f, const h5part_int64_t i, const h5part_int64_t j, const h5part_int64_t k) |
| h5part_int64_t | H5BlockDefine3DFieldLayout (H5PartFile *f, const h5part_int64_t i_start, const h5part_int64_t i_end, const h5part_int64_t j_start, const h5part_int64_t j_end, const h5part_int64_t k_start, const h5part_int64_t k_end) |
| h5part_int64_t | H5BlockGet3DChunkDims (H5PartFile *f, const char *field_name, h5part_int64_t *dims) |
| h5part_int64_t | H5BlockGetFieldInfo (H5PartFile *f, const h5part_int64_t idx, char *field_name, const h5part_int64_t len_field_name, h5part_int64_t *grid_rank, h5part_int64_t *grid_dims, h5part_int64_t *field_rank, h5part_int64_t *type) |
| h5part_int64_t | H5BlockGetFieldInfoByName (H5PartFile *f, const char *field_name, h5part_int64_t *grid_rank, h5part_int64_t *grid_dims, h5part_int64_t *field_rank, h5part_int64_t *type) |
| h5part_int64_t | H5BlockGetNumFields (H5PartFile *f) |
| h5part_int64_t | H5BlockHasFieldData (H5PartFile *f) |
| h5part_int64_t H5Block3dGetPartitionOfProc | ( | H5PartFile * | f, |
| const h5part_int64_t | proc, | ||
| h5part_int64_t * | i_start, | ||
| h5part_int64_t * | i_end, | ||
| h5part_int64_t * | j_start, | ||
| h5part_int64_t * | j_end, | ||
| h5part_int64_t * | k_start, | ||
| h5part_int64_t * | k_end | ||
| ) |
Return partition of processor proc as specified with H5BlockDefine3dLayout().
H5PART_SUCCESS on success.H5PART_ERR_INVAL if proc is invalid. | f | IN: File handle |
| proc | IN: Processor to get partition from |
| i_start | OUT: start index of i |
| i_end | OUT: end index of i |
| j_start | OUT: start index of j |
| j_end | OUT: end index of j |
| k_start | OUT: start index of k |
| k_end | OUT: end index of k |
| h5part_int64_t H5Block3dGetProcOf | ( | H5PartFile * | f, |
| h5part_int64_t | i, | ||
| h5part_int64_t | j, | ||
| h5part_int64_t | k | ||
| ) |
Returns the processor computing the reduced (ghostzone-free) partition given by the coordinates i, j and k.
H5PART_SUCCESS or error code | f | IN: File handle |
| i | IN: i coordinate |
| j | IN: j coordinate |
| k | IN: k coordinate |
| h5part_int64_t H5Block3dGetReducedPartitionOfProc | ( | H5PartFile * | f, |
| h5part_int64_t | proc, | ||
| h5part_int64_t * | i_start, | ||
| h5part_int64_t * | i_end, | ||
| h5part_int64_t * | j_start, | ||
| h5part_int64_t * | j_end, | ||
| h5part_int64_t * | k_start, | ||
| h5part_int64_t * | k_end | ||
| ) |
Return reduced (ghost-zone free) partition of processor proc as specified with H5BlockDefine3dLayout().
H5PART_SUCCESS on success.H5PART_ERR_INVAL if proc is invalid. | f | IN: File handle |
| proc | IN: Processor to get partition from |
| i_start | OUT: start index of i |
| i_end | OUT: end index of i |
| j_start | OUT: start index of j |
| j_end | OUT: end index of j |
| k_start | OUT: start index of j |
| k_end | OUT: end index of j |
| h5part_int64_t H5BlockDefine3DChunkDims | ( | H5PartFile * | f, |
| const h5part_int64_t | i, | ||
| const h5part_int64_t | j, | ||
| const h5part_int64_t | k | ||
| ) |
Define the chunk dimensions and enable chunking in the underlying HDF5 dataset.
H5PART_SUCCESS on success | f | IN: File handle |
| i | IN: size of i |
| j | IN: size of j |
| k | IN: size of k |
| h5part_int64_t H5BlockDefine3DFieldLayout | ( | H5PartFile * | f, |
| const h5part_int64_t | i_start, | ||
| const h5part_int64_t | i_end, | ||
| const h5part_int64_t | j_start, | ||
| const h5part_int64_t | j_end, | ||
| const h5part_int64_t | k_start, | ||
| const h5part_int64_t | k_end | ||
| ) |
Defines the partition of the field that this processor owns, using Fortran ordering: the fastest moving index is i.
This routine uses an MPI_Allgather, so at large concurrency it should be called as infrequently as possible. For instance, if several timesteps use the same field dimensions, set the layout only once before the first timestep.
H5PART_SUCCESS on successH5PART_ERR_MPI H5PART_ERR_HDF5 | f | IN: File handle |
| i_start | IN: start index of i |
| i_end | IN: end index of i |
| j_start | IN: start index of j |
| j_end | IN: end index of j |
| k_start | IN: start index of k |
| k_end | IN: end index of k |
| h5part_int64_t H5BlockGet3DChunkDims | ( | H5PartFile * | f, |
| const char * | field_name, | ||
| h5part_int64_t * | dims | ||
| ) |
Lookup the chunk dimensions of the underlying HDF5 dataset.
H5PART_SUCCESS on success | f | IN: File handle |
| field_name | IN: name of dataset |
| dims | OUT: array containing the chunk dimensions |
| h5part_int64_t H5BlockGetFieldInfo | ( | H5PartFile * | f, |
| const h5part_int64_t | idx, | ||
| char * | field_name, | ||
| const h5part_int64_t | len_field_name, | ||
| h5part_int64_t * | grid_rank, | ||
| h5part_int64_t * | grid_dims, | ||
| h5part_int64_t * | field_rank, | ||
| h5part_int64_t * | type | ||
| ) |
Get the name, rank and dimensions of the field specified by the index idx.
This function can be used to retrieve all fields bound to the current time-step by looping from 0 to the number of fields minus one. The number of fields bound to the current time-step can be queried by calling the function H5BlockGetNumFields().
H5PART_SUCCESS or error code | f | IN: file handle |
| idx | IN: index of field |
| field_name | OUT: field name |
| len_field_name | IN: buffer size |
| grid_rank | OUT: grid rank |
| grid_dims | OUT: grid dimensions |
| field_rank | OUT: field rank |
| type | OUT: datatype |
| h5part_int64_t H5BlockGetFieldInfoByName | ( | H5PartFile * | f, |
| const char * | field_name, | ||
| h5part_int64_t * | grid_rank, | ||
| h5part_int64_t * | grid_dims, | ||
| h5part_int64_t * | field_rank, | ||
| h5part_int64_t * | type | ||
| ) |
Get the rank and dimensions of the field specified by its name.
H5PART_SUCCESS or error code | f | IN: file handle |
| field_name | IN: field name |
| grid_rank | OUT: grid rank |
| grid_dims | OUT: grid dimensions |
| field_rank | OUT: field rank |
| type | OUT: datatype |
| h5part_int64_t H5BlockGetNumFields | ( | H5PartFile * | f | ) |
Query number of fields in current time step.
H5PART_SUCCESS or error code | f | IN: file handle |
| h5part_int64_t H5BlockHasFieldData | ( | H5PartFile * | f | ) |
Checks whether the current time-step has field data or not.
H5PART_SUCCESS if field data is available otherwise H5PART_ERR_NOENTRY. | f | IN: file handle |