oneAPI Deep Neural Network Library (oneDNN)
Performance library for Deep Learning
1.96.0
dnnl::matmul::primitive_desc Struct Reference

Primitive descriptor for a matmul primitive. More...

#include <dnnl.hpp>

Inheritance diagram for dnnl::matmul::primitive_desc:
Collaboration diagram for dnnl::matmul::primitive_desc:

Public Member Functions

 primitive_desc ()=default
 Default constructor. Produces an empty object.
 
 primitive_desc (const desc &adesc, const engine &aengine, bool allow_empty=false)
 Constructs a primitive descriptor for a matmul primitive. More...
 
 primitive_desc (const desc &adesc, const primitive_attr &attr, const engine &aengine, bool allow_empty=false)
 Constructs a primitive descriptor for a matmul primitive. More...
 
 primitive_desc (dnnl_primitive_desc_t pd)
 Constructs a primitive descriptor for a matmul primitive from a C API primitive descriptor that must have a matching kind. More...
 
memory::desc src_desc () const
 Returns a source memory descriptor. More...
 
memory::desc weights_desc () const
 Returns a weights memory descriptor. More...
 
memory::desc bias_desc () const
 Returns the bias memory descriptor. More...
 
memory::desc dst_desc () const
 Returns a destination memory descriptor. More...
 
- Public Member Functions inherited from dnnl::primitive_desc
 primitive_desc (const_dnnl_op_desc_t desc, const primitive_attr *attr, const engine &aengine, const_dnnl_primitive_desc_t hint_fwd_pd, bool allow_empty=false)
 Constructs a primitive descriptor. More...
 
bool next_impl ()
 Advances the primitive iterator to the next implementation. More...
 
 primitive_desc_base ()=default
 Default constructor. Produces an empty object.
 
 primitive_desc_base (dnnl_primitive_desc_t pd, dnnl::primitive::kind prim_kind)
 Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects. More...
 
 primitive_desc_base (dnnl_primitive_desc_t pd, dnnl::primitive::kind prim_kind, dnnl::prop_kind aprop_kind)
 Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects. More...
 
 primitive_desc_base (dnnl_primitive_desc_t pd, dnnl::primitive::kind prim_kind, dnnl::prop_kind prop_kind1, dnnl::prop_kind prop_kind2)
 Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects. More...
 
- Public Member Functions inherited from dnnl::primitive_desc_base
 primitive_desc_base ()=default
 Default constructor. Produces an empty object.
 
engine get_engine () const
 Returns the engine of the primitive descriptor. More...
 
const char * impl_info_str () const
 Returns implementation name. More...
 
memory::dim query_s64 (query what) const
 Returns a memory::dim value (same as int64_t). More...
 
memory::desc query_md (query what, int idx=0) const
 Returns a memory descriptor. More...
 
memory::desc src_desc (int idx) const
 Returns a source memory descriptor. More...
 
memory::desc dst_desc (int idx) const
 Returns a destination memory descriptor. More...
 
memory::desc weights_desc (int idx) const
 Returns a weights memory descriptor. More...
 
memory::desc diff_src_desc (int idx) const
 Returns a diff source memory descriptor. More...
 
memory::desc diff_dst_desc (int idx) const
 Returns a diff destination memory descriptor. More...
 
memory::desc diff_weights_desc (int idx) const
 Returns a diff weights memory descriptor. More...
 
memory::desc src_desc () const
 Returns a source memory descriptor. More...
 
memory::desc dst_desc () const
 Returns a destination memory descriptor. More...
 
memory::desc weights_desc () const
 Returns a weights memory descriptor. More...
 
memory::desc diff_src_desc () const
 Returns a diff source memory descriptor. More...
 
memory::desc diff_dst_desc () const
 Returns a diff destination memory descriptor. More...
 
memory::desc diff_weights_desc () const
 Returns a diff weights memory descriptor. More...
 
memory::desc workspace_desc () const
 Returns the workspace memory descriptor. More...
 
memory::desc scratchpad_desc () const
 Returns the scratchpad memory descriptor. More...
 
engine scratchpad_engine () const
 Returns the engine on which the scratchpad memory is located. More...
 
primitive_attr get_primitive_attr () const
 Returns the primitive attributes. More...
 
dnnl::primitive::kind get_kind () const
 Returns the kind of the primitive descriptor. More...
 
- Public Member Functions inherited from dnnl::handle< dnnl_primitive_desc_t >
bool operator== (const handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > &other) const
 Equality operator. More...
 
bool operator!= (const handle &other) const
 Inequality operator. More...
 
 handle ()=default
 Constructs an empty handle object. More...
 
 handle (const handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > &)=default
 Copy constructor.
 
 handle (handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > &&)=default
 Move constructor.
 
 handle (dnnl_primitive_desc_t t, bool weak=false)
 Constructs a handle wrapper object from a C API handle. More...
 
handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > & operator= (const handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > &)=default
 Assignment operator.
 
handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > & operator= (handle< dnnl_primitive_desc_t, handle_traits< dnnl_primitive_desc_t > > &&)=default
 Move assignment operator.
 
void reset (dnnl_primitive_desc_t t, bool weak=false)
 Resets the handle wrapper objects to wrap a new C API handle. More...
 
dnnl_primitive_desc_t get (bool allow_empty=false) const
 Returns the underlying C API handle. More...
 
 operator dnnl_primitive_desc_t () const
 Converts a handle to the underlying C API handle type. More...
 
 operator bool () const
 Checks whether the object is not empty. More...
 

Additional Inherited Members

- Protected Member Functions inherited from dnnl::primitive_desc_base
void reset_with_clone (const_dnnl_primitive_desc_t pd)
 Resets the value of the handle to a clone of a C API primitive descriptor. More...
 
 primitive_desc_base (dnnl_primitive_desc_t pd, dnnl::primitive::kind prim_kind)
 Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects. More...
 
 primitive_desc_base (dnnl_primitive_desc_t pd, dnnl::primitive::kind prim_kind, dnnl::prop_kind aprop_kind)
 Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects. More...
 
 primitive_desc_base (dnnl_primitive_desc_t pd, dnnl::primitive::kind prim_kind, dnnl::prop_kind prop_kind1, dnnl::prop_kind prop_kind2)
 Constructs a primitive descriptor base object from a clone of a C API primitive descriptor after verifying that it is what the caller expects. More...
 

Detailed Description

Primitive descriptor for a matmul primitive.

Examples:
cpu_matmul_quantization.cpp, cpu_sgemm_and_matmul.cpp, inference_int8_matmul.cpp, and matmul.cpp.

Constructor & Destructor Documentation

◆ primitive_desc() [1/3]

dnnl::matmul::primitive_desc::primitive_desc ( const desc adesc,
const engine aengine,
bool  allow_empty = false 
)
inline

Constructs a primitive descriptor for a matmul primitive.

Parameters
adescDescriptor for a matmul primitive.
aengineEngine to use.
allow_emptyA 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() [2/3]

dnnl::matmul::primitive_desc::primitive_desc ( const desc adesc,
const primitive_attr attr,
const engine aengine,
bool  allow_empty = false 
)
inline

Constructs a primitive descriptor for a matmul primitive.

Parameters
adescDescriptor for a matmul primitive.
attrPrimitive attributes to use.
aengineEngine to use.
allow_emptyA 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() [3/3]

dnnl::matmul::primitive_desc::primitive_desc ( dnnl_primitive_desc_t  pd)
inline

Constructs a primitive descriptor for a matmul primitive from a C API primitive descriptor that must have a matching kind.

Parameters
pdC API primitive descriptor for a matmul primitive.

Member Function Documentation

◆ src_desc()

memory::desc dnnl::matmul::primitive_desc::src_desc ( ) const
inline

Returns a source memory descriptor.

Returns
Source memory descriptor.
A zero memory descriptor if the primitive does not have a source parameter.

◆ weights_desc()

memory::desc dnnl::matmul::primitive_desc::weights_desc ( ) const
inline

Returns a weights memory descriptor.

Returns
Weights memory descriptor.
A zero memory descriptor if the primitive does not have a weights parameter.

◆ bias_desc()

memory::desc dnnl::matmul::primitive_desc::bias_desc ( ) const
inline

Returns the bias memory descriptor.

Returns
The bias memory descriptor.
A zero memory descriptor of the primitive does not have a bias parameter.

◆ dst_desc()

memory::desc dnnl::matmul::primitive_desc::dst_desc ( ) const
inline

Returns a destination memory descriptor.

Returns
Destination memory descriptor.
A zero memory descriptor if the primitive does not have a destination parameter.

The documentation for this struct was generated from the following file: