Modules | |
| Sequence of post operations | |
Functions | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_create (dnnl_primitive_attr_t *attr) |
Creates an empty (default) attr attribute. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_clone (dnnl_primitive_attr_t *attr, const_dnnl_primitive_attr_t existing_attr) |
Makes a copy of an existing_attr. | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_destroy (dnnl_primitive_attr_t attr) |
Deletes an attr. | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_get_scratchpad_mode (const_dnnl_primitive_attr_t attr, dnnl_scratchpad_mode_t *mode) |
Returns the scratchpad mode set in the attribute attr. | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_set_scratchpad_mode (dnnl_primitive_attr_t attr, dnnl_scratchpad_mode_t mode) |
Sets scratchpad mode. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_get_output_scales (const_dnnl_primitive_attr_t attr, dnnl_dim_t *count, int *mask, const float **scales) |
Returns count, correspondence scale mask, and a pointer to a constant floating point array of output scales for given attr, previously set by dnnl_primitive_attr_set_output_scales. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_set_output_scales (dnnl_primitive_attr_t attr, dnnl_dim_t count, int mask, const float *scales) |
Sets output scales for primitive operations. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_get_post_ops (const_dnnl_primitive_attr_t attr, const_dnnl_post_ops_t *post_ops) |
Returns post_ops for given attr. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_attr_set_post_ops (dnnl_primitive_attr_t attr, const_dnnl_post_ops_t post_ops) |
Sets configured post_ops to an attribute attr for future use (when primitive descriptor is being created). More... | |
An extension for controlling primitive behavior.
| dnnl_status_t DNNL_API dnnl_primitive_attr_create | ( | dnnl_primitive_attr_t * | attr | ) |
Creates an empty (default) attr attribute.
All the parameters are set to default values.
An empty attribute is used in primitive descriptor creation whenever it is not passed explicitly, e.g. in dnnl_primitive_desc_create.
| dnnl_status_t DNNL_API dnnl_primitive_attr_set_scratchpad_mode | ( | dnnl_primitive_attr_t | attr, |
| dnnl_scratchpad_mode_t | mode | ||
| ) |
Sets scratchpad mode.
The possible values are: dnnl_scratchpad_mode_library (default) and dnnl_scratchpad_mode_user.
| dnnl_status_t DNNL_API dnnl_primitive_attr_get_output_scales | ( | const_dnnl_primitive_attr_t | attr, |
| dnnl_dim_t * | count, | ||
| int * | mask, | ||
| const float ** | scales | ||
| ) |
Returns count, correspondence scale mask, and a pointer to a constant floating point array of output scales for given attr, previously set by dnnl_primitive_attr_set_output_scales.
scales array points to the internal attr field, so the user should not modify or destroy scales.scales is the same as that of the attr to which it belongs, so it is illegal to use scales after attr is destroyed. | dnnl_status_t DNNL_API dnnl_primitive_attr_set_output_scales | ( | dnnl_primitive_attr_t | attr, |
| dnnl_dim_t | count, | ||
| int | mask, | ||
| const float * | scales | ||
| ) |
Sets output scales for primitive operations.
The number of elements count and correspondence scale mask are stored for future use.
The mask argument defines the correspondence between the output tensor dimensions and the scales array. Set the i-th bit of mask to 1 to use a dedicated scaling factor for each slice of the output tensor over the i-th dimension. Set mask to 0 to use a common scaling factor for the whole output tensor.
Example usage:
count corresponds to mask until an actual primitive descriptor is created, so it is the user's responsibility to set proper values. The following formula must hold:\[count = \prod\limits_{d \in mask} output.dims[d]\]
| dnnl_status_t DNNL_API dnnl_primitive_attr_get_post_ops | ( | const_dnnl_primitive_attr_t | attr, |
| const_dnnl_post_ops_t * | post_ops | ||
| ) |
Returns post_ops for given attr.
post_ops points to the internal attr field, so the user should not modify or destroy post_ops. Also, the lifetime of post_ops is the same as that of the attr it belongs to, so it is illegal to use post_ops after attr has been destroyed. | dnnl_status_t DNNL_API dnnl_primitive_attr_set_post_ops | ( | dnnl_primitive_attr_t | attr, |
| const_dnnl_post_ops_t | post_ops | ||
| ) |
Sets configured post_ops to an attribute attr for future use (when primitive descriptor is being created).