increment can now be specified for the core vfd driver

This commit is contained in:
2016-03-11 17:51:17 +01:00
parent 1273baf99e
commit 59fd8ea6c6
3 changed files with 11 additions and 7 deletions
+5 -4
View File
@@ -98,13 +98,14 @@ h5_setprop_file_mpio_posix (
H5_SETPROP_FILE_COREVFD)
h5_int64_t
h5_setprop_file_corevfd (
h5_int64_t* _prop
h5_int64_t* _prop,
h5_int64_t* increment
) {
H5_API_ENTER (h5_int64_t,
"prop=%lld",
(long long int)*_prop);
"prop=%lld, increment=%lld",
(long long int)*_prop, (long long int)*increment);
h5_prop_t prop = (h5_prop_t)*_prop;
H5_API_RETURN ((h5_int64_t)h5_set_prop_file_core_vfd (prop));
H5_API_RETURN ((h5_int64_t)h5_set_prop_file_core_vfd (prop, increment));
}
#define h5_setprop_file_align FC_MANGLING ( \
+4 -2
View File
@@ -246,10 +246,11 @@ h5_set_prop_file_mpio_posix (
h5_err_t
h5_set_prop_file_core_vfd (
h5_prop_t _props
h5_prop_t _props,
h5_int64_t increment
) {
h5_prop_file_p props = (h5_prop_file_p)_props;
H5_CORE_API_ENTER (h5_err_t, "props=%p", props);
H5_CORE_API_ENTER (h5_err_t, "props=%p, increment=%lld", props, (long long int)increment);
if (props->class != H5_PROP_FILE) {
H5_INLINE_FUNC_LEAVE (
@@ -261,6 +262,7 @@ h5_set_prop_file_core_vfd (
props->flags &= ~(H5_VFD_MPIO_COLLECTIVE | H5_VFD_MPIO_INDEPENDENT | H5_VFD_MPIO_POSIX);
props->flags |= H5_VFD_MPIO_INDEPENDENT;
props->comm = MPI_COMM_SELF;
props->increment = increment;
if (props->throttle > 0) {
h5_warn ("Throttling is not permitted with core VFD. Reset throttling.");
props->throttle = 0;
+2 -1
View File
@@ -18,10 +18,11 @@ struct h5_prop { // generic property class
char pad[248]; // sizeof (struct h5_prop) == 256
};
struct h5_prop_file { // file property
struct h5_prop_file { // file property
h5_int64_t class; // property class == H5_PROP_FILE
h5_int64_t flags; // file access mode (read-write, readonly ...
h5_int64_t align; // HDF5 alignment
h5_int64_t increment; // increment for core vfd
h5_int64_t throttle;
MPI_Comm comm;
hid_t xfer_prop; // dataset transfer properties