Functions | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_iterator_create (dnnl_primitive_desc_iterator_t *iterator, const_dnnl_op_desc_t op_desc, const_dnnl_primitive_attr_t attr, dnnl_engine_t engine, const_dnnl_primitive_desc_t hint_forward_primitive_desc) |
Creates a primitive descriptor iterator for given op_desc, attr, engine, and optionally a hint primitive descriptor from forward propagation (required for backward propagation). More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_iterator_next (dnnl_primitive_desc_iterator_t iterator) |
| Iterates over primitive descriptors. More... | |
| dnnl_primitive_desc_t DNNL_API | dnnl_primitive_desc_iterator_fetch (const_dnnl_primitive_desc_iterator_t iterator) |
| Fetches the current primitive descriptor. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_iterator_destroy (dnnl_primitive_desc_iterator_t iterator) |
Deletes a primitive descriptor iterator. | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_create (dnnl_primitive_desc_t *primitive_desc, const_dnnl_op_desc_t op_desc, const_dnnl_primitive_attr_t attr, dnnl_engine_t engine, const_dnnl_primitive_desc_t hint_forward_primitive_desc) |
Creates a primitive_desc using op_desc, attr, engine, and optionally a hint primitive descriptor from forward propagation. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_clone (dnnl_primitive_desc_t *primitive_desc, const_dnnl_primitive_desc_t existing_primitive_desc) |
Makes a copy of a primitive_desc. | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_get_attr (const_dnnl_primitive_desc_t primitive_desc, const_dnnl_primitive_attr_t *attr) |
Returns a constant reference to the attribute of a primitive_desc. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_destroy (dnnl_primitive_desc_t primitive_desc) |
Deletes a primitive_desc. | |
| dnnl_status_t DNNL_API | dnnl_primitive_desc_query (const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what, int index, void *result) |
| Queries primitive descriptor. More... | |
| const dnnl_memory_desc_t DNNL_API * | dnnl_primitive_desc_query_md (const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what, int index) |
| Queries primitive descriptor for memory descriptor. More... | |
| int DNNL_API | dnnl_primitive_desc_query_s32 (const_dnnl_primitive_desc_t primitive_desc, dnnl_query_t what, int index) |
| Queries primitive descriptor for signed 32bit int. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_create (dnnl_primitive_t *primitive, const_dnnl_primitive_desc_t primitive_desc) |
Creates a primitive using a primitive_desc descriptor. | |
| dnnl_status_t DNNL_API | dnnl_primitive_execute (const_dnnl_primitive_t primitive, dnnl_stream_t stream, int nargs, const dnnl_exec_arg_t *args) |
Executes a primitive using a stream, and nargs arguments args. | |
| dnnl_status_t DNNL_API | dnnl_primitive_get_primitive_desc (const_dnnl_primitive_t primitive, const_dnnl_primitive_desc_t *primitive_desc) |
Retrieves a reference to the primitive_desc descriptor of given primitive. More... | |
| dnnl_status_t DNNL_API | dnnl_primitive_destroy (dnnl_primitive_t primitive) |
Deletes a primitive. | |
| dnnl_status_t DNNL_API dnnl_primitive_desc_iterator_create | ( | dnnl_primitive_desc_iterator_t * | iterator, |
| const_dnnl_op_desc_t | op_desc, | ||
| const_dnnl_primitive_attr_t | attr, | ||
| dnnl_engine_t | engine, | ||
| const_dnnl_primitive_desc_t | hint_forward_primitive_desc | ||
| ) |
Creates a primitive descriptor iterator for given op_desc, attr, engine, and optionally a hint primitive descriptor from forward propagation (required for backward propagation).
Pass NULL for forward propagation.
| dnnl_status_t DNNL_API dnnl_primitive_desc_iterator_next | ( | dnnl_primitive_desc_iterator_t | iterator | ) |
Iterates over primitive descriptors.
Returns dnnl_iterator_ends if no more primitive descriptors are available.
| dnnl_primitive_desc_t DNNL_API dnnl_primitive_desc_iterator_fetch | ( | const_dnnl_primitive_desc_iterator_t | iterator | ) |
Fetches the current primitive descriptor.
| dnnl_status_t DNNL_API dnnl_primitive_desc_create | ( | dnnl_primitive_desc_t * | primitive_desc, |
| const_dnnl_op_desc_t | op_desc, | ||
| const_dnnl_primitive_attr_t | attr, | ||
| dnnl_engine_t | engine, | ||
| const_dnnl_primitive_desc_t | hint_forward_primitive_desc | ||
| ) |
Creates a primitive_desc using op_desc, attr, engine, and optionally a hint primitive descriptor from forward propagation.
The call is equivalent to creating a primitive descriptor iterator, immediately fetching a primitive descriptor, and then destroying the iterator.
| dnnl_status_t DNNL_API dnnl_primitive_desc_get_attr | ( | const_dnnl_primitive_desc_t | primitive_desc, |
| const_dnnl_primitive_attr_t * | attr | ||
| ) |
Returns a constant reference to the attribute of a primitive_desc.
attr.attr is the same as that of a primitive_desc, so it is illegal to use the attr once primitive_desc has been destroyed. | dnnl_status_t DNNL_API dnnl_primitive_desc_query | ( | const_dnnl_primitive_desc_t | primitive_desc, |
| dnnl_query_t | what, | ||
| int | index, | ||
| void * | result | ||
| ) |
Queries primitive descriptor.
One of the most typical use cases is to query a primitive descriptor created with source, weights, and destination formats equal to dnnl_format_tag_any about the corresponding memory descriptors (what equals dnnl_query_src_md, dnnl_query_weights_md, and dnnl_query_dst_md respectively) to be able to prepare memory and create reorders if required.
Another quite typical use case is to query an operation primitive descriptor for a workspace (what equals dnnl_query_workspace_md). The returned status dnnl_not_required indicates that a workspace is not required.
A few other possibilities:
| const dnnl_memory_desc_t DNNL_API* dnnl_primitive_desc_query_md | ( | const_dnnl_primitive_desc_t | primitive_desc, |
| dnnl_query_t | what, | ||
| int | index | ||
| ) |
Queries primitive descriptor for memory descriptor.
This is just a specialized version of dnnl_primitive_desc_query used for convenience.
| int DNNL_API dnnl_primitive_desc_query_s32 | ( | const_dnnl_primitive_desc_t | primitive_desc, |
| dnnl_query_t | what, | ||
| int | index | ||
| ) |
Queries primitive descriptor for signed 32bit int.
This is just a specialized version of dnnl_primitive_desc_query used for convenience.
| dnnl_status_t DNNL_API dnnl_primitive_get_primitive_desc | ( | const_dnnl_primitive_t | primitive, |
| const_dnnl_primitive_desc_t * | primitive_desc | ||
| ) |
Retrieves a reference to the primitive_desc descriptor of given primitive.
const qualifier of the returned object prevents such attempts.