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.
struct dnnl::group_normalization_forward::primitive_desc
Overview
Primitive descriptor for a group normalization forward propagation primitive. More…
#include <dnnl.hpp>
struct primitive_desc: public dnnl::primitive_desc
{
    // construction
    primitive_desc();
    primitive_desc(
        const engine& aengine,
        prop_kind aprop_kind,
        const memory::desc& src_desc,
        const memory::desc& dst_desc,
        memory::dim groups,
        float epsilon,
        normalization_flags flags,
        const primitive_attr& attr = default_attr(),
        bool allow_empty = false
        );
    primitive_desc(dnnl_primitive_desc_t pd);
    // methods
    memory::desc src_desc() const;
    memory::desc dst_desc() const;
    memory::desc weights_desc() const;
    memory::desc workspace_desc() const;
    memory::desc mean_desc() const;
    memory::desc variance_desc() const;
    dnnl::prop_kind get_prop_kind() const;
    memory::dim get_group_size() const;
    float get_epsilon() const;
    normalization_flags get_flags() const;
};Inherited Members
public:
    // methods
    handle<T, traits>& operator = (const handle<T, traits>&);
    handle<T, traits>& operator = (handle<T, traits>&&);
    void reset(T t, bool weak = false);
    T get(bool allow_empty = false) const;
    operator T () const;
    operator bool () const;
    bool operator == (const handle<T, traits>& other) const;
    bool operator != (const handle& other) const;
    engine get_engine() const;
    const char* impl_info_str() const;
    memory::dim query_s64(query what) const;
    memory::dims get_strides() const;
    memory::dims get_dilations() const;
    memory::dims get_padding_l() const;
    memory::dims get_padding_r() const;
    float get_epsilon() const;
    template <typename T = unsigned>
    T get_flags() const;
    dnnl::algorithm get_algorithm() const;
    float get_alpha() const;
    float get_beta() const;
    int get_axis() const;
    memory::dim get_local_size() const;
    float get_k() const;
    float get_p() const;
    std::vector<float> get_factors() const;
    dnnl::algorithm get_cell_kind() const;
    dnnl::rnn_direction get_direction() const;
    dnnl::algorithm get_activation_kind() const;
    memory::dims get_kernel() const;
    memory::dim get_group_size() const;
    dnnl::prop_kind get_prop_kind() const;
    memory::desc query_md(query what, int idx = 0) const;
    memory::desc src_desc(int idx) const;
    memory::desc dst_desc(int idx) const;
    memory::desc weights_desc(int idx) const;
    memory::desc diff_src_desc(int idx) const;
    memory::desc diff_dst_desc(int idx) const;
    memory::desc diff_weights_desc(int idx) const;
    memory::desc src_desc() const;
    memory::desc dst_desc() const;
    memory::desc weights_desc() const;
    memory::desc diff_src_desc() const;
    memory::desc diff_dst_desc() const;
    memory::desc diff_weights_desc() const;
    memory::desc workspace_desc() const;
    memory::desc scratchpad_desc() const;
    engine scratchpad_engine() const;
    primitive_attr get_primitive_attr() const;
    dnnl::primitive::kind get_kind() const;
    std::vector<uint8_t> get_cache_blob_id() const;
    bool next_impl();
    primitive_desc_base();
    primitive_desc_base();
    primitive_desc_base();
    primitive_desc_base();Detailed Documentation
Primitive descriptor for a group normalization forward propagation primitive.
Construction
primitive_desc()Default constructor. Produces an empty object.
primitive_desc(
    const engine& aengine,
    prop_kind aprop_kind,
    const memory::desc& src_desc,
    const memory::desc& dst_desc,
    memory::dim groups,
    float epsilon,
    normalization_flags flags,
    const primitive_attr& attr = default_attr(),
    bool allow_empty = false
    )Constructs a primitive descriptor for a group normalization forward propagation primitive.
Parameters:
| aengine | Engine to use. | 
| aprop_kind | Propagation kind. Possible values are dnnl::prop_kind::forward_training and dnnl::prop_kind::forward_inference. | 
| src_desc | Source memory descriptor. | 
| dst_desc | Destination memory descriptor. | 
| groups | Group normalization groups parameter. | 
| epsilon | Group normalization epsilon parameter. | 
| flags | Group normalization flags (dnnl::normalization_flags). | 
| attr | Primitive attributes to use. Attributes are optional and default to empty attributes. | 
| allow_empty | A flag signifying whether construction is allowed to fail without throwing an exception. In this case an empty object will be produced. This flag is optional and defaults to false. | 
primitive_desc(dnnl_primitive_desc_t pd)Constructs a primitive descriptor for a group normalization forward propagation primitive from a C API primitive descriptor that must have a matching kind.
Parameters:
| pd | C API primitive descriptor for a group normalization forward propagation primitive. | 
Methods
memory::desc src_desc() constReturns a source memory descriptor.
Returns:
Source memory descriptor.
A zero memory descriptor if the primitive does not have a source parameter.
memory::desc dst_desc() constReturns a destination memory descriptor.
Returns:
Destination memory descriptor.
A zero memory descriptor if the primitive does not have a destination parameter.
memory::desc weights_desc() constReturns a weights memory descriptor.
Returns:
Weights memory descriptor.
A zero memory descriptor if the primitive does not have a weights parameter.
memory::desc workspace_desc() constReturns the workspace memory descriptor.
Returns:
Workspace memory descriptor.
A zero memory descriptor if the primitive does not require workspace parameter.
memory::desc mean_desc() constReturns memory descriptor for mean.
Returns:
Memory descriptor for mean.
memory::desc variance_desc() constReturns memory descriptor for variance.
Returns:
Memory descriptor for variance.
dnnl::prop_kind get_prop_kind() constReturns a propagation kind.
Returns:
A propagation kind.
dnnl::prop_kind::undef if the primitive does not have a propagation parameter.
memory::dim get_group_size() constReturns a group size parameter.
Returns:
A group size parameter.
Zero if the primitive does not have a group size parameter.
float get_epsilon() constReturns an epsilon.
Returns:
An epsilon.
Zero if the primitive does not have an epsilon parameter.
normalization_flags get_flags() constReturns normalization flags.
Returns:
Normalization flags.