.. index:: pair: struct; dnnl::shuffle_backward::primitive_desc .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc: struct dnnl::shuffle_backward::primitive_desc ============================================= .. toctree:: :hidden: Overview ~~~~~~~~ Primitive descriptor for a shuffle backward propagation primitive. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include struct primitive_desc: public :ref:`dnnl::primitive_desc` { // construction :ref:`primitive_desc`(); :ref:`primitive_desc`( const :ref:`engine`& aengine, const :ref:`memory::desc`& diff_src_desc, const :ref:`memory::desc`& diff_dst_desc, int axis, int group_size, const :ref:`shuffle_forward::primitive_desc`& hint_fwd_pd, const :ref:`primitive_attr`& attr = :ref:`default_attr`(), bool allow_empty = false ); :ref:`primitive_desc`(:ref:`dnnl_primitive_desc_t` pd); // methods :ref:`memory::desc` :ref:`diff_src_desc`() const; :ref:`memory::desc` :ref:`diff_dst_desc`() const; :ref:`prop_kind` :ref:`get_prop_kind`() const; int :ref:`get_axis`() const; :ref:`memory::dim` :ref:`get_group_size`() const; }; Inherited Members ----------------- .. ref-code-block:: cpp :class: doxyrest-overview-inherited-code-block public: // methods :ref:`handle`& :ref:`operator =` (const :ref:`handle`&); :ref:`handle`& :ref:`operator =` (:ref:`handle`&&); void :ref:`reset`(T t, bool weak = false); T :ref:`get`(bool allow_empty = false) const; :ref:`operator T` () const; :ref:`operator bool` () const; bool :ref:`operator ==` (const :ref:`handle`& other) const; bool :ref:`operator !=` (const :ref:`handle`& other) const; :ref:`engine` :ref:`get_engine`() const; const char* :ref:`impl_info_str`() const; :ref:`memory::dim` :ref:`query_s64`(:ref:`query` what) const; :ref:`memory::dims` :ref:`get_strides`() const; :ref:`memory::dims` :ref:`get_dilations`() const; :ref:`memory::dims` :ref:`get_padding_l`() const; :ref:`memory::dims` :ref:`get_padding_r`() const; float :ref:`get_epsilon`() const; template T :ref:`get_flags`() const; :ref:`dnnl::algorithm` :ref:`get_algorithm`() const; float :ref:`get_alpha`() const; float :ref:`get_beta`() const; int :ref:`get_axis`() const; :ref:`memory::dim` :ref:`get_local_size`() const; float :ref:`get_k`() const; float :ref:`get_p`() const; std::vector :ref:`get_factors`() const; :ref:`dnnl::algorithm` :ref:`get_cell_kind`() const; :ref:`dnnl::rnn_direction` :ref:`get_direction`() const; :ref:`dnnl::algorithm` :ref:`get_activation_kind`() const; :ref:`memory::dims` :ref:`get_kernel`() const; :ref:`memory::dim` :ref:`get_group_size`() const; :ref:`dnnl::prop_kind` :ref:`get_prop_kind`() const; :ref:`memory::desc` :ref:`query_md`(:ref:`query` what, int idx = 0) const; :ref:`memory::desc` :ref:`src_desc`(int idx) const; :ref:`memory::desc` :ref:`dst_desc`(int idx) const; :ref:`memory::desc` :ref:`weights_desc`(int idx) const; :ref:`memory::desc` :ref:`diff_src_desc`(int idx) const; :ref:`memory::desc` :ref:`diff_dst_desc`(int idx) const; :ref:`memory::desc` :ref:`diff_weights_desc`(int idx) const; :ref:`memory::desc` :ref:`src_desc`() const; :ref:`memory::desc` :ref:`dst_desc`() const; :ref:`memory::desc` :ref:`weights_desc`() const; :ref:`memory::desc` :ref:`diff_src_desc`() const; :ref:`memory::desc` :ref:`diff_dst_desc`() const; :ref:`memory::desc` :ref:`diff_weights_desc`() const; :ref:`memory::desc` :ref:`workspace_desc`() const; :ref:`memory::desc` :ref:`scratchpad_desc`() const; :ref:`engine` :ref:`scratchpad_engine`() const; :ref:`primitive_attr` :ref:`get_primitive_attr`() const; :ref:`dnnl::primitive::kind` :ref:`get_kind`() const; std::vector :ref:`get_cache_blob_id`() const; bool :ref:`next_impl`(); :ref:`primitive_desc_base`(); :ref:`primitive_desc_base`(); :ref:`primitive_desc_base`(); :ref:`primitive_desc_base`(); .. _details-structdnnl_1_1shuffle__backward_1_1primitive__desc: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Primitive descriptor for a shuffle backward propagation primitive. Construction ------------ .. index:: pair: function; primitive_desc .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1a4f20b6b6e16d72e320ed797edd53a31a: .. ref-code-block:: cpp :class: doxyrest-title-code-block primitive_desc() Default constructor. Produces an empty object. .. index:: pair: function; primitive_desc .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1ac39ae7e9a1a17af4a372241c43ccc4fb: .. ref-code-block:: cpp :class: doxyrest-title-code-block primitive_desc( const :ref:`engine`& aengine, const :ref:`memory::desc`& diff_src_desc, const :ref:`memory::desc`& diff_dst_desc, int axis, int group_size, const :ref:`shuffle_forward::primitive_desc`& hint_fwd_pd, const :ref:`primitive_attr`& attr = :ref:`default_attr`(), bool allow_empty = false ) Constructs a primitive descriptor for a shuffle backward propagation primitive. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - aengine - Engine to use. * - diff_src_desc - Diff source memory descriptor. * - diff_dst_desc - Diff destination memory descriptor. * - axis - The axis along which the data is shuffled. * - group_size - Shuffle group size. * - hint_fwd_pd - Primitive descriptor for a shuffle forward propagation primitive. It is used as a hint for deciding which memory format to use. * - 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. .. index:: pair: function; primitive_desc .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1a3d806f289c6962b56ac99bae81f8d43d: .. ref-code-block:: cpp :class: doxyrest-title-code-block primitive_desc(:ref:`dnnl_primitive_desc_t` pd) Constructs a primitive descriptor for a shuffle backward propagation primitive from a C API primitive descriptor that must have a matching kind. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - pd - C API primitive descriptor for a shuffle backward propagation primitive. Methods ------- .. index:: pair: function; diff_src_desc .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1a42bb890f5e4c6b4663c587c6180581d1: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`memory::desc` diff_src_desc() const Returns a diff source memory descriptor. .. rubric:: Returns: Diff source memory descriptor. A zero memory descriptor if the primitive does not have a diff source memory with. .. index:: pair: function; diff_dst_desc .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1acc7680d4e600bf248d27be9c8ed8414f: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`memory::desc` diff_dst_desc() const Returns a diff destination memory descriptor. .. rubric:: Returns: Diff destination memory descriptor. A zero memory descriptor if the primitive does not have a diff destination parameter. .. index:: pair: function; get_prop_kind .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1a334c290294f5ed83ffc3c5aaa4fa5a96: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`prop_kind` get_prop_kind() const Returns a propagation kind. .. rubric:: Returns: A propagation kind. :ref:`dnnl::prop_kind::undef ` if the primitive does not have a propagation parameter. .. index:: pair: function; get_axis .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1a89611ad4e6bc189633179c654e99234d: .. ref-code-block:: cpp :class: doxyrest-title-code-block int get_axis() const Returns an axis. .. rubric:: Returns: An axis. A negative number if the primitive does not have an axis parameter. .. index:: pair: function; get_group_size .. _doxid-structdnnl_1_1shuffle__backward_1_1primitive__desc_1a6fbdd934f69cf103937d05c6adf77c48: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`memory::dim` get_group_size() const Returns a group size parameter. .. rubric:: Returns: A group size parameter. Zero if the primitive does not have a group size parameter.