Visible to Intel only — GUID: GUID-22971806-CE2B-4F83-A894-D5DF7F6D8B22
Visible to Intel only — GUID: GUID-22971806-CE2B-4F83-A894-D5DF7F6D8B22
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 pack_type::no_trans, or pack_type::trans. |
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. |