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::rnn_primitive_desc_base
Overview
Base class for primitive descriptors for RNN primitives. More…
#include <dnnl.hpp>
struct rnn_primitive_desc_base: public dnnl::primitive_desc
{
    // construction
    rnn_primitive_desc_base();
    rnn_primitive_desc_base(
        dnnl_primitive_desc_t pd,
        dnnl::prop_kind aprop_kind,
        dnnl::algorithm cell_kind
        );
    // methods
    memory::desc src_layer_desc() const;
    memory::desc augru_attention_desc() const;
    memory::desc src_iter_desc() const;
    memory::desc src_iter_c_desc() const;
    memory::desc weights_layer_desc() const;
    memory::desc weights_iter_desc() const;
    memory::desc weights_peephole_desc() const;
    memory::desc weights_projection_desc() const;
    memory::desc bias_desc() const;
    memory::desc dst_layer_desc() const;
    memory::desc dst_iter_desc() const;
    memory::desc dst_iter_c_desc() const;
    memory::desc diff_src_layer_desc() const;
    memory::desc diff_augru_attention_desc() const;
    memory::desc diff_src_iter_desc() const;
    memory::desc diff_src_iter_c_desc() const;
    memory::desc diff_weights_layer_desc() const;
    memory::desc diff_weights_iter_desc() const;
    memory::desc diff_weights_peephole_desc() const;
    memory::desc diff_weights_projection_desc() const;
    memory::desc diff_bias_desc() const;
    memory::desc diff_dst_layer_desc() const;
    memory::desc diff_dst_iter_desc() const;
    memory::desc diff_dst_iter_c_desc() const;
    primitive_desc();
};
// direct descendants
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;
struct primitive_desc;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
Base class for primitive descriptors for RNN primitives.
Construction
rnn_primitive_desc_base()Default constructor. Produces an empty object.
rnn_primitive_desc_base(
    dnnl_primitive_desc_t pd,
    dnnl::prop_kind aprop_kind,
    dnnl::algorithm cell_kind
    )Constructs an RNN primitive descriptor base from a C API primitive descriptor while checking that it actually describes the expected primitive by comparing propagation and primitive kinds.
Parameters:
| pd | C API primitive descriptor. | 
| aprop_kind | Expected propagation kind. | 
| cell_kind | Expected cell kind. | 
Methods
memory::desc src_layer_desc() constReturns source layer memory descriptor.
Returns:
Source layer memory descriptor.
memory::desc augru_attention_desc() constReturns AUGRU attention memory descriptor.
Returns:
AUGRU attention memory descriptor.
memory::desc src_iter_desc() constReturns source iteration memory descriptor.
Returns:
Source iteration memory descriptor.
A zero memory descriptor if the primitive does not have a source iteration parameter.
memory::desc src_iter_c_desc() constReturns source recurrent cell state memory descriptor.
Returns:
Source recurrent cell state memory descriptor.
memory::desc weights_layer_desc() constReturns weights layer memory descriptor.
Returns:
Weights layer memory descriptor.
memory::desc weights_iter_desc() constReturns weights iteration memory descriptor.
Returns:
Weights iteration memory descriptor.
memory::desc weights_peephole_desc() constReturns weights peephole memory descriptor.
Returns:
Weights peephole memory descriptor.
memory::desc weights_projection_desc() constReturns weights projection memory descriptor.
Returns:
Weights projection memory descriptor.
memory::desc bias_desc() constReturns bias memory descriptor.
Returns:
Bias memory descriptor.
A zero memory descriptor if the primitive does not have a bias parameter.
memory::desc dst_layer_desc() constReturns destination layer memory descriptor.
Returns:
Destination layer memory descriptor.
memory::desc dst_iter_desc() constReturns destination iteration memory descriptor.
Returns:
Destination iteration memory descriptor.
A zero memory descriptor if the primitive does not have a destination iteration parameter.
memory::desc dst_iter_c_desc() constReturns destination recurrent cell state memory descriptor.
Returns:
Destination recurrent cell state memory descriptor.
memory::desc diff_src_layer_desc() constReturns diff source layer memory descriptor.
Returns:
Diff source layer memory descriptor.
memory::desc diff_augru_attention_desc() constReturns diff AUGRU attention memory descriptor.
Returns:
Diff AUGRU attention memory descriptor.
memory::desc diff_src_iter_desc() constReturns diff source iteration memory descriptor.
Returns:
Diff source iteration memory descriptor.
A zero memory descriptor if the primitive does not have a diff source iteration parameter.
memory::desc diff_src_iter_c_desc() constReturns diff source recurrent cell state memory descriptor.
Returns:
Diff source recurrent cell state memory descriptor.
memory::desc diff_weights_layer_desc() constReturns diff weights layer memory descriptor.
Returns:
Diff weights layer memory descriptor.
memory::desc diff_weights_iter_desc() constReturns diff weights iteration memory descriptor.
Returns:
Diff weights iteration memory descriptor.
memory::desc diff_weights_peephole_desc() constReturns diff weights peephole memory descriptor.
Returns:
Diff weights peephole memory descriptor.
memory::desc diff_weights_projection_desc() constReturns diff weights projection memory descriptor.
Returns:
Diff weights projection memory descriptor.
memory::desc diff_bias_desc() constReturns diff bias memory descriptor.
Returns:
Diff bias memory descriptor.
A zero memory descriptor if the primitive does not have a diff bias parameter.
memory::desc diff_dst_layer_desc() constReturns diff destination layer memory descriptor.
Returns:
Diff destination layer memory descriptor.
memory::desc diff_dst_iter_desc() constReturns diff destination iteration memory descriptor.
Returns:
Diff destination iteration memory descriptor.
A zero memory descriptor if the primitive does not have a diff destination iteration parameter.
memory::desc diff_dst_iter_c_desc() constReturns diff destination recurrent cell state memory descriptor.
Returns:
Diff destination recurrent cell state memory descriptor.