Binary¶
Overview¶
A primitive to perform tensor operations over two tensors. More…
// structs struct dnnl::binary; struct dnnl_binary_desc_t; // global functions dnnl_status_t DNNL_API dnnl_binary_desc_init( dnnl_binary_desc_t* binary_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t* src0_desc, const dnnl_memory_desc_t* src1_desc, const dnnl_memory_desc_t* dst_desc );
Detailed Documentation¶
A primitive to perform tensor operations over two tensors.
See also:
Binary in developer guide
Global Functions¶
dnnl_status_t DNNL_API dnnl_binary_desc_init( dnnl_binary_desc_t* binary_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t* src0_desc, const dnnl_memory_desc_t* src1_desc, const dnnl_memory_desc_t* dst_desc )
Initializes a descriptor for a binary primitive.
Note
Memory descriptor dst_desc
is allowed to be initialized with dnnl_format_tag_any or with format_kind set to dnnl_format_kind_any.
Note
Both memory descriptors must have the same number of dimensions. Element broadcasting is supported for memory descriptor src1_desc
and are applied to @ src1_desc dimensions that have size equal to 1.
Parameters:
binary_desc |
Output descriptor for a binary primitive. |
alg_kind |
Algorithm kind. Valid values are dnnl_binary_add, dnnl_binary_mul, dnnl_binary_max, dnnl_binary_min, dnnl_binary_div, dnnl_binary_sub, dnnl_binary_ge, dnnl_binary_gt, dnnl_binary_le, dnnl_binary_lt, dnnl_binary_eq and dnnl_binary_ne. |
src0_desc |
Source 0 memory descriptor. |
src1_desc |
Source 1 memory descriptor. |
dst_desc |
Destination memory descriptor. |
Returns:
dnnl_success on success and a status describing the error otherwise.