Page tree

The license could not be verified: License Certificate has expired!









Sets the size of parameters used to control the symbol table nodes


H5P_SET_SYM_K ( fcpl_id,  ik,  lk )


herr_t H5Pset_sym_k(
            hid_t fcpl_id,
            unsigned ik,
            unsigned lk


Fortran90 Interface: h5pset_sym_k_f
SUBROUTINE h5pset_sym_k_f (prp_id, ik, lk, hdferr)
  INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
  INTEGER, INTENT(IN) :: ik            ! Symbol table tree rank
  INTEGER, INTENT(IN) :: lk            ! Symbol table node size
  INTEGER, INTENT(OUT) :: hdferr       ! Error code
                                       ! 0 on success and -1 on failure
END SUBROUTINE h5pset_sym_k_f

hid_t fcpl_id    IN: File creation property list identifier
unsigned ikIN: Symbol table tree rank
unsigned lkIN: Symbol table node size


H5P_SET_SYM_K sets the size of parameters used to control the symbol table nodes.

This function is valid only for file creation property lists. Passing in a value of zero (0) for one of the parameters retains the current value.

ik is one half the rank of a B-tree that stores a symbol table for a group. Internal nodes of the symbol table are on average 75% full. That is, the average rank of the tree is 1.5 times the value of ik. The HDF5 library uses (ik*2) as the maximum # of entries before splitting a B-tree node. Since only 2 bytes are used in storing # of entries for a B-tree node in an HDF5 file, (ik*2) cannot exceed 65536. The default value for ik is 16.

lk is one half of the number of symbols that can be stored in a symbol table node. A symbol table node is the leaf of a symbol table tree which is used to store a group. When symbols are inserted randomly into a group, the group's symbol table nodes are 75% full on average. That is, they contain 1.5 times the number of symbols specified by lk. The default value for lk is 4.


Returns a non-negative value if successful; otherwise returns a negative value.


Coming Soon!

Release    Change
1.6.4ik parameter type changed to unsigned.
1.6.0The ik parameter has changed from type int to unsigned.

--- Last Modified: May 01, 2019 | 03:19 PM