struct dnnl::ukernel::transform¶
Overview¶
Transform ukernel. More…
#include <dnnl_ukernel.hpp> struct transform: public dnnl::handle { // construction transform(); transform( memory::dim K, memory::dim N, pack_type in_pack_type, memory::dim in_ld, memory::dim out_ld, memory::data_type in_dt, memory::data_type out_dt, bool allow_empty = false ); // methods void generate(); void execute(const void* in, void* out) const; };
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;
Detailed Documentation¶
Transform ukernel.
Construction¶
transform()
Default constructor. Produces an empty object.
transform( memory::dim K, memory::dim N, pack_type in_pack_type, memory::dim in_ld, memory::dim out_ld, memory::data_type in_dt, memory::data_type out_dt, bool allow_empty = false )
Constructs a transform object.
Parameters:
K |
Dimension K. |
N |
Dimension N. |
in_pack_type |
Input packing type. Must be one of |
in_ld |
Input leading dimension. |
out_ld |
Output leading dimension. Specifies a block by N dimension during data packing. |
in_dt |
Input data type. |
out_dt |
Output data type. |
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. |
Methods¶
void generate()
Generates an executable part of transform object.
void execute(const void* in, void* out) const
Executes a transform object.
Parameters:
in |
Pointer to an input buffer. |
out |
Pointer to an output buffer. |