libxsmm_xregister Function

public function libxsmm_xregister(key, keysize, valsize, valinit)

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.

Arguments

Type IntentOptional 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

Return Value type(C_PTR)


Contents