Developer Guide and Reference

  • 2022.1
  • 04/11/2022
  • Public Content
Contents

Inner Product

Overview

A primitive to compute an inner product. More…
// structs struct dnnl_inner_product_desc_t; struct dnnl::inner_product_backward_data; struct dnnl::inner_product_backward_weights; struct dnnl::inner_product_forward; // global functions dnnl_status_t DNNL_API dnnl_inner_product_forward_desc_init( dnnl_inner_product_desc_t* ip_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* bias_desc, const dnnl_memory_desc_t* dst_desc ); dnnl_status_t DNNL_API dnnl_inner_product_backward_data_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* diff_src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* diff_dst_desc ); dnnl_status_t DNNL_API dnnl_inner_product_backward_weights_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* diff_weights_desc, const dnnl_memory_desc_t* diff_bias_desc, const dnnl_memory_desc_t* diff_dst_desc );

Detailed Documentation

A primitive to compute an inner product.
See also:
Inner Product in developer guide
Global Functions
dnnl_status_t DNNL_API dnnl_inner_product_forward_desc_init( dnnl_inner_product_desc_t* ip_desc, dnnl_prop_kind_t prop_kind, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* bias_desc, const dnnl_memory_desc_t* dst_desc )
Initializes descriptor for inner product forward propagation.
Memory descriptors can be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Parameters:
ip_desc
Output descriptor for inner product primitive.
prop_kind
Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference.
src_desc
Source memory descriptor.
weights_desc
Weights memory descriptor.
bias_desc
Bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term.
dst_desc
Destination memory descriptor.
Returns:
dnnl_success on success and a status describing the error otherwise.
dnnl_status_t DNNL_API dnnl_inner_product_backward_data_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* diff_src_desc, const dnnl_memory_desc_t* weights_desc, const dnnl_memory_desc_t* diff_dst_desc )
Initializes descriptor for inner product backward propagation.
Memory descriptors can be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Parameters:
ip_desc
Output descriptor for inner product primitive.
diff_src_desc
Diff source memory descriptor.
weights_desc
Weights memory descriptor.
diff_dst_desc
Diff destination memory descriptor.
Returns:
dnnl_success on success and a status describing the error otherwise.
dnnl_status_t DNNL_API dnnl_inner_product_backward_weights_desc_init( dnnl_inner_product_desc_t* ip_desc, const dnnl_memory_desc_t* src_desc, const dnnl_memory_desc_t* diff_weights_desc, const dnnl_memory_desc_t* diff_bias_desc, const dnnl_memory_desc_t* diff_dst_desc )
Initializes descriptor for inner product weights gradient primitive.
Memory descriptors can be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Parameters:
ip_desc
Output descriptor for inner product primitive.
src_desc
Source memory descriptor.
diff_weights_desc
Diff weights memory descriptor.
diff_bias_desc
Diff bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term.
diff_dst_desc
Diff destination memory descriptor.
Returns:
dnnl_success on success and a status describing the error otherwise.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.