struct dnnl::reorder::primitive_desc¶
Overview¶
Primitive descriptor for a reorder primitive. More…
#include <dnnl.hpp> struct primitive_desc: public dnnl::primitive_desc_base { // construction primitive_desc(); primitive_desc( const engine& src_engine, const memory::desc& src_md, const engine& dst_engine, const memory::desc& dst_md, const primitive_attr& attr = default_attr(), bool allow_empty = false ); primitive_desc( const memory& src, const memory& dst, const primitive_attr& attr = default_attr(), bool allow_empty = false ); primitive_desc(dnnl_primitive_desc_t pd); // methods engine get_src_engine() const; engine get_dst_engine() const; memory::desc src_desc() const; memory::desc dst_desc() const; primitive_desc_base(); primitive_desc_base(); primitive_desc_base(); primitive_desc_base(); };
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;
Detailed Documentation¶
Primitive descriptor for a reorder primitive.
Construction¶
primitive_desc()
Default constructor. Produces an empty object.
primitive_desc( const engine& src_engine, const memory::desc& src_md, const engine& dst_engine, const memory::desc& dst_md, const primitive_attr& attr = default_attr(), bool allow_empty = false )
Constructs a primitive descriptor for reorder primitive.
Note
If allow_empty
is true, the constructor does not throw if a primitive descriptor cannot be created.
Parameters:
src_engine |
Engine on which the source memory object will be located. |
src_md |
Source memory descriptor. |
dst_engine |
Engine on which the destination memory object will be located. |
dst_md |
Destination memory descriptor. |
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( const memory& src, const memory& dst, const primitive_attr& attr = default_attr(), bool allow_empty = false )
Constructs a primitive descriptor for reorder primitive.
Parameters:
src |
Source memory object. It is used to obtain the source memory descriptor and engine. |
dst |
Destination memory object. It is used to obtain the destination memory descriptor and engine. |
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 reorder primitive from a C API primitive descriptor which must have a matching kind.
Parameters:
pd |
C API primitive descriptor for reorder primitive. |
Methods¶
engine get_src_engine() const
Returns the engine on which the source memory is allocated.
Returns:
The engine on which the source memory is allocated.
engine get_dst_engine() const
Returns the engine on which the destination memory is allocated.
Returns:
The engine on which the destination memory is allocated.
memory::desc src_desc() const
Returns 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() const
Returns a destination memory descriptor.
Returns:
Destination memory descriptor.
A zero memory descriptor if the primitive does not have a destination parameter.
primitive_desc_base()
Default constructor. Produces an empty object.
primitive_desc_base()
Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects.
Note
The prim_kind
should map to a primitive that does not have different values of propagation kind (e.g. dnnl::binary).
Note
Primitive descriptor base constructed this way does not support next_impl() (will throw).
Parameters:
pd |
C API primitive descriptor to clone. |
prim_kind |
Expected primitive kind. |
primitive_desc_base()
Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects.
Note
Primitive descriptor base constructed this way does not support next_impl() (will throw).
Parameters:
pd |
C API primitive descriptor to clone. |
prim_kind |
Expected primitive kind. |
aprop_kind |
Expected propagation kind. |
primitive_desc_base()
Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects.
Note
Primitive descriptor base constructed this way does not support next_impl() (will throw).
Parameters:
pd |
C API primitive descriptor to clone. |
prim_kind |
Expected primitive kind. |
prop_kind1 |
Expected propagation kind (option 1). |
prop_kind2 |
Expected propagation kind (option 2). This value is checked if the check with |