.. index:: pair: struct; dnnl::inner_product_backward_weights::primitive_desc .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc: struct dnnl::inner_product_backward_weights::primitive_desc =========================================================== .. toctree:: :hidden: Overview ~~~~~~~~ Primitive descriptor for an inner product weights gradient 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`& src_desc, const :ref:`memory::desc`& diff_weights_desc, const :ref:`memory::desc`& diff_bias_desc, const :ref:`memory::desc`& diff_dst_desc, const :ref:`inner_product_forward::primitive_desc`& hint_fwd_pd, const :ref:`primitive_attr`& attr = :ref:`default_attr`(), bool allow_empty = false ); :ref:`primitive_desc`( const :ref:`engine`& aengine, const :ref:`memory::desc`& src_desc, const :ref:`memory::desc`& diff_weights_desc, const :ref:`memory::desc`& diff_dst_desc, const :ref:`inner_product_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:`src_desc`() const; :ref:`memory::desc` :ref:`diff_weights_desc`() const; :ref:`memory::desc` :ref:`diff_dst_desc`() const; :ref:`memory::desc` :ref:`diff_bias_desc`() const; :ref:`prop_kind` :ref:`get_prop_kind`() 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_1inner__product__backward__weights_1_1primitive__desc: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Primitive descriptor for an inner product weights gradient primitive. Construction ------------ .. index:: pair: function; primitive_desc .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc_1a65f971302f4c9f4cc92d17cf07be2e4d: .. 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_1inner__product__backward__weights_1_1primitive__desc_1a70993045620c0001bbe7e7537494b539: .. ref-code-block:: cpp :class: doxyrest-title-code-block primitive_desc( const :ref:`engine`& aengine, const :ref:`memory::desc`& src_desc, const :ref:`memory::desc`& diff_weights_desc, const :ref:`memory::desc`& diff_bias_desc, const :ref:`memory::desc`& diff_dst_desc, const :ref:`inner_product_forward::primitive_desc`& hint_fwd_pd, const :ref:`primitive_attr`& attr = :ref:`default_attr`(), bool allow_empty = false ) Constructs a primitive descriptor for an inner product weights update primitive with bias. .. note:: All the memory descriptors may be initialized with the :ref:`dnnl::memory::format_tag::any ` value of ``format_tag``. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - aengine - Engine to use. * - src_desc - Memory descriptor for src. * - diff_weights_desc - Memory descriptor for diff weights. * - diff_bias_desc - Memory descriptor for diff bias. * - diff_dst_desc - Memory descriptor for diff dst. * - hint_fwd_pd - Primitive descriptor for an inner product 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_1inner__product__backward__weights_1_1primitive__desc_1a1a1609f6fc06814bc19f0382ed912885: .. ref-code-block:: cpp :class: doxyrest-title-code-block primitive_desc( const :ref:`engine`& aengine, const :ref:`memory::desc`& src_desc, const :ref:`memory::desc`& diff_weights_desc, const :ref:`memory::desc`& diff_dst_desc, const :ref:`inner_product_forward::primitive_desc`& hint_fwd_pd, const :ref:`primitive_attr`& attr = :ref:`default_attr`(), bool allow_empty = false ) Constructs a primitive descriptor for an inner product weights update primitive. .. note:: All the memory descriptors may be initialized with the :ref:`dnnl::memory::format_tag::any ` value of ``format_tag``. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - aengine - Engine to use. * - src_desc - Memory descriptor for src. * - diff_weights_desc - Memory descriptor for diff weights. * - diff_dst_desc - Memory descriptor for diff dst. * - attr - Primitive attributes to use. Attributes are optional and default to empty attributes. * - hint_fwd_pd - Primitive descriptor for an inner product forward propagation primitive. It is used as a hint for deciding which memory format to use. * - 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_1inner__product__backward__weights_1_1primitive__desc_1a7aa388c794e5686e81df4f16f0de7804: .. ref-code-block:: cpp :class: doxyrest-title-code-block primitive_desc(:ref:`dnnl_primitive_desc_t` pd) Constructs a primitive descriptor for an inner product weights update 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 an inner product weights gradient primitive. Methods ------- .. index:: pair: function; src_desc .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc_1a0a4f40fadb88bd6603b9121b7426fb51: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`memory::desc` src_desc() const Returns a source memory descriptor. .. rubric:: Returns: Source memory descriptor. A zero memory descriptor if the primitive does not have a source parameter. .. index:: pair: function; diff_weights_desc .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc_1a46ac4299a91d79986c6fb7d905e0f00b: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`memory::desc` diff_weights_desc() const Returns a diff weights memory descriptor. .. rubric:: Returns: Diff weights memory descriptor. A zero memory descriptor if the primitive does not have a diff weights parameter. .. index:: pair: function; diff_dst_desc .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc_1a70b4d3e444dc173602b87cc76999b171: .. 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; diff_bias_desc .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc_1ab68ee3171f06000cf006ab486d219f13: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`memory::desc` diff_bias_desc() const Returns the diff bias memory descriptor. .. rubric:: Returns: The diff bias memory descriptor. A zero memory descriptor of the primitive does not have a diff bias parameter. .. index:: pair: function; get_prop_kind .. _doxid-structdnnl_1_1inner__product__backward__weights_1_1primitive__desc_1a6be3d74ac3d2a032a9f773b4f6aaa3ab: .. 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.