struct dnnl::gru_backward::desc

Overview

Descriptor for a GRU backward propagation primitive. More…

#include <dnnl.hpp>

struct desc
{
    // fields

    dnnl_rnn_desc_t data;

    // construction

    desc(
        prop_kind aprop_kind,
        rnn_direction direction,
        const memory::desc& src_layer_desc,
        const memory::desc& src_iter_desc,
        const memory::desc& weights_layer_desc,
        const memory::desc& weights_iter_desc,
        const memory::desc& bias_desc,
        const memory::desc& dst_layer_desc,
        const memory::desc& dst_iter_desc,
        const memory::desc& diff_src_layer_desc,
        const memory::desc& diff_src_iter_desc,
        const memory::desc& diff_weights_layer_desc,
        const memory::desc& diff_weights_iter_desc,
        const memory::desc& diff_bias_desc,
        const memory::desc& diff_dst_layer_desc,
        const memory::desc& diff_dst_iter_desc,
        rnn_flags flags = rnn_flags::undef
        );
};

Detailed Documentation

Descriptor for a GRU backward propagation primitive.

Construction

desc(
    prop_kind aprop_kind,
    rnn_direction direction,
    const memory::desc& src_layer_desc,
    const memory::desc& src_iter_desc,
    const memory::desc& weights_layer_desc,
    const memory::desc& weights_iter_desc,
    const memory::desc& bias_desc,
    const memory::desc& dst_layer_desc,
    const memory::desc& dst_iter_desc,
    const memory::desc& diff_src_layer_desc,
    const memory::desc& diff_src_iter_desc,
    const memory::desc& diff_weights_layer_desc,
    const memory::desc& diff_weights_iter_desc,
    const memory::desc& diff_bias_desc,
    const memory::desc& diff_dst_layer_desc,
    const memory::desc& diff_dst_iter_desc,
    rnn_flags flags = rnn_flags::undef
    )

Constructs a descriptor for a GRU backward propagation primitive.

The following arguments may point to a zero memory descriptor:

  • src_iter_desc together with diff_src_iter_desc,

  • bias_desc together with diff_bias_desc,

  • dst_iter_desc together with diff_dst_iter_desc.

This would then indicate that the GRU backward propagation primitive should not use them and should default to zero values instead.

Note

All memory descriptors may be initialized with dnnl::memory::format_tag::any value of format_tag.

Parameters:

aprop_kind

Propagation kind. Must be dnnl::prop_kind::backward.

direction

RNN direction. See dnnl::rnn_direction for more info.

src_layer_desc

Memory descriptor for the input vector.

src_iter_desc

Memory descriptor for the input recurrent hidden state vector.

weights_layer_desc

Memory descriptor for the weights applied to the layer input.

weights_iter_desc

Memory descriptor for the weights applied to the recurrent input.

bias_desc

Bias memory descriptor.

dst_layer_desc

Memory descriptor for the output vector.

dst_iter_desc

Memory descriptor for the output recurrent hidden state vector.

diff_src_layer_desc

Memory descriptor for the diff of input vector.

diff_src_iter_desc

Memory descriptor for the diff of input recurrent hidden state vector.

diff_weights_layer_desc

Memory descriptor for the diff of weights applied to the layer input.

diff_weights_iter_desc

Memory descriptor for the diff of weights applied to the recurrent input.

diff_bias_desc

Diff bias memory descriptor.

diff_dst_layer_desc

Memory descriptor for the diff of output vector.

diff_dst_iter_desc

Memory descriptor for the diff of output recurrent hidden state vector.

flags

Unused.