Register user-defined key-value; value can be queried (libxsmm_xdispatch). Since the key-type is unknown to LIBXSMM, the key must be binary reproducible, i.e., a structured type (can be padded) must be initialized like a binary blob (libxsmm_xclear) followed by an element-wise initialization. The size of the key is limited (see documentation). The given value is copied by LIBXSMM and can be initialized prior to registration or whenever queried. Registered data is released when the program terminates but can be also released if needed (libxsmm_xrelease), .e.g., in case of a larger value reusing the same key.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(C_PTR), | intent(in), | VALUE | :: | key | ||
integer(kind=C_INT), | intent(in) | :: | keysize | |||
integer(kind=C_INT), | intent(in) | :: | valsize | |||
type(C_PTR), | intent(in), | optional | :: | valinit |