Intel® oneAPI Deep Neural Network Developer Guide and Reference
A newer version of this document is available. Customers should click here to go to the newest version.
Eltwise
Overview
A primitive to perform elementwise operations such as the rectifier linear unit (ReLU). More…
// structs
struct dnnl::eltwise_backward;
struct dnnl::eltwise_forward;
// global functions
dnnl_status_t DNNL_API dnnl_eltwise_forward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_prop_kind_t prop_kind,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t src_desc,
    const_dnnl_memory_desc_t dst_desc,
    float alpha,
    float beta,
    const_dnnl_primitive_attr_t attr
    );
dnnl_status_t DNNL_API dnnl_eltwise_backward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t diff_src_desc,
    const_dnnl_memory_desc_t diff_dst_desc,
    const_dnnl_memory_desc_t data_desc,
    float alpha,
    float beta,
    const_dnnl_primitive_desc_t hint_fwd_pd,
    const_dnnl_primitive_attr_t attr
    ); 
  Detailed Documentation
A primitive to perform elementwise operations such as the rectifier linear unit (ReLU).
Both forward and backward propagation primitives support in-place operation; that is, src and dst can refer to the same memory for forward propagation, and diff_dst and diff_src can refer to the same memory for backward propagation.
See also:
Eltwise in developer guide
Global Functions
dnnl_status_t DNNL_API dnnl_eltwise_forward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_prop_kind_t prop_kind,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t src_desc,
    const_dnnl_memory_desc_t dst_desc,
    float alpha,
    float beta,
    const_dnnl_primitive_attr_t attr
    ) 
   Creates a primitive descriptor for an eltwise forward propagation primitive.
Parameters:
primitive_desc  |  
        Output primitive descriptor.  |  
       
engine  |  
        Engine to use.  |  
       
prop_kind  |  
        Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference.  |  
       
alg_kind  |  
        Elementwise algorithm kind.  |  
       
src_desc  |  
        Source memory descriptor.  |  
       
dst_desc  |  
        Destination memory descriptor.  |  
       
alpha  |  
        The alpha parameter for the elementwise operation. Specific meaning depends on the algorithm.  |  
       
beta  |  
        The beta parameter for the elementwise operation. Specific meaning depends on the algorithm.  |  
       
attr  |  
        Primitive attributes (can be NULL).  |  
       
Returns:
dnnl_success on success and a status describing the error otherwise.
dnnl_status_t DNNL_API dnnl_eltwise_backward_primitive_desc_create(
    dnnl_primitive_desc_t* primitive_desc,
    dnnl_engine_t engine,
    dnnl_alg_kind_t alg_kind,
    const_dnnl_memory_desc_t diff_src_desc,
    const_dnnl_memory_desc_t diff_dst_desc,
    const_dnnl_memory_desc_t data_desc,
    float alpha,
    float beta,
    const_dnnl_primitive_desc_t hint_fwd_pd,
    const_dnnl_primitive_attr_t attr
    ) 
   Creates a primitive descriptor for an eltwise backward propagation primitive.
Parameters:
primitive_desc  |  
        Output primitive descriptor.  |  
       
engine  |  
        Engine to use.  |  
       
alg_kind  |  
        Elementwise algorithm kind.  |  
       
diff_src_desc  |  
        Diff source memory descriptor.  |  
       
diff_dst_desc  |  
        Diff destination memory descriptor.  |  
       
data_desc  |  
        Destination memory descriptor if one of the “use_dst_for_bwd” algorithms are used (such as dnnl_eltwise_relu_use_dst_for_bwd), source memory descriptor otherwise.  |  
       
alpha  |  
        The alpha parameter for the elementwise operation. Specific meaning depends on the algorithm.  |  
       
beta  |  
        The beta parameter for the elementwise operation. Specific meaning depends on the algorithm.  |  
       
hint_fwd_pd  |  
        Primitive descriptor for a respective forward propagation primitive.  |  
       
attr  |  
        Primitive attributes (can be NULL).  |  
       
Returns:
dnnl_success on success and a status describing the error otherwise.