Deep Neural Network Library (DNNL)  1.1.3
Performance library for Deep Learning
Public Member Functions | List of all members

A base class for descriptors of all primitives that have an operation descriptor and that support iteration over multiple implementations. More...

#include <dnnl.hpp>

Inheritance diagram for dnnl::primitive_desc:
Inheritance graph
[legend]
Collaboration diagram for dnnl::primitive_desc:
Collaboration graph
[legend]

Public Member Functions

 primitive_desc (const_dnnl_op_desc_t desc, const primitive_attr *attr, const engine &e, const_dnnl_primitive_desc_t hint_fwd_pd, bool allow_empty=false)
 Creates a primitive descriptor from given op_desc, attr, engine, and optionally a hint primitive descriptor from forward propagation. More...
 
bool next_impl ()
 Advances the next implementation for the given op descriptor. 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_desc from a C counterpart. More...
 
- Public Member Functions inherited from dnnl::primitive_desc_base
engine get_engine () const
 Returns the engine of the primitive descriptor.
 
const char * impl_info_str () const
 Returns implementation name.
 
memory::dim query_s64 (query q) const
 Queries the memory::dim value (same as int64_t).
 
memory::desc query_md (query what, int idx=0) const
 Queries and returns requested memory descriptor.
 
memory::desc scratchpad_desc () const
 Queries scratchpad memory descriptor. More...
 
engine scratchpad_engine () const
 Returns the engine that owns the scratchpad memory.
 
primitive_attr get_primitive_attr () const
 Returns the attributes.
 
- Public Member Functions inherited from dnnl::handle< dnnl_primitive_desc_t >
 handle ()=default
 Empty constructor. More...
 
 handle (dnnl_primitive_desc_t t, bool weak=false)
 Constructs a C handle wrapper from a C handle. More...
 
void reset (dnnl_primitive_desc_t t, bool weak=false)
 Resets the value of a C handle. More...
 
dnnl_primitive_desc_t get (bool allow_emtpy=false) const
 Returns the value of the underlying C handle.
 

Additional Inherited Members

- Protected Member Functions inherited from dnnl::primitive_desc_base
 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_desc from a C counterpart. More...
 

Detailed Description

A base class for descriptors of all primitives that have an operation descriptor and that support iteration over multiple implementations.

Constructor & Destructor Documentation

◆ primitive_desc()

dnnl::primitive_desc::primitive_desc ( const_dnnl_op_desc_t  desc,
const primitive_attr attr,
const engine e,
const_dnnl_primitive_desc_t  hint_fwd_pd,
bool  allow_empty = false 
)
inline

Creates a primitive descriptor from given op_desc, attr, engine, and optionally a hint primitive descriptor from forward propagation.

If allow_empty is true, the constructor does not throw if a primitive_desc cannot be created. But calling next_impl() in this case will throw.

Member Function Documentation

◆ next_impl()

bool dnnl::primitive_desc::next_impl ( )
inline

Advances the next implementation for the given op descriptor.

Returns:

  • true on success
  • false if the last implementation reached, and the primitive descriptor itself is kept unchanged

◆ primitive_desc_base()

dnnl::primitive_desc_base::primitive_desc_base
inline

Constructs a primitive_desc from a C counterpart.

Performs certain checks to make sure that the C counterpart refers to a primitive descriptor of a particular primitive kind and propagation kind.

Note: primitive_desc constructed this way does not support next_impl().


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