struct dnnl::reorder¶
Overview¶
Reorder primitive. More…
#include <dnnl.hpp> struct reorder: public dnnl::primitive { // structs struct primitive_desc; // construction reorder(); reorder(const primitive_desc& pd); reorder(const primitive_desc& pd, const std::vector<uint8_t>& cache_blob); reorder( const memory& src, const memory& dst, const primitive_attr& attr = primitive_attr() ); // methods void execute(const stream& astream, memory& src, memory& dst) const; void execute(); };
Inherited Members¶
public: // enums enum kind; // 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; const_dnnl_primitive_desc_t get_primitive_desc() const; kind get_kind() const; std::vector<uint8_t> get_cache_blob() const; void execute(const stream& astream, const std::unordered_map<int, memory>& args) const; handle(); handle(); handle(); handle();
Detailed Documentation¶
Reorder primitive.
Construction¶
reorder()
Default constructor. Produces an empty object.
reorder(const primitive_desc& pd)
Constructs a reorder primitive.
Parameters:
pd |
Primitive descriptor for reorder primitive. |
reorder(const primitive_desc& pd, const std::vector<uint8_t>& cache_blob)
Constructs a reorder primitive from a cache blob.
Parameters:
pd |
Primitive descriptor for reorder primitive. |
cache_blob |
Cache blob. |
reorder( const memory& src, const memory& dst, const primitive_attr& attr = primitive_attr() )
Constructs a reorder primitive that would reorder data between memory objects having the same memory descriptors as memory objects src
and dst
.
Parameters:
src |
Source memory object. |
dst |
Destination memory object. |
attr |
Primitive attributes to use (optional). |
Methods¶
void execute(const stream& astream, memory& src, memory& dst) const
Executes the reorder primitive.
Parameters:
astream |
Stream object. The stream must belong to the same engine as the primitive. |
src |
Source memory object. |
dst |
Destination memory object. |
void execute()
Executes computations specified by the primitive in a specified stream.
Arguments are passed via an arguments map containing <index, memory object> pairs. The index must be one of the DNNL_ARG_*
values such as DNNL_ARG_SRC
, and the memory must have a memory descriptor matching the one returned by primitive_desc::query_md (query::exec_arg_md, index) unless using dynamic shapes (see DNNL_RUNTIME_DIM_VAL).
Parameters:
astream |
Stream object. The stream must belong to the same engine as the primitive. |
args |
Arguments map. |