[][src]Enum onednn_sys::dnnl_query_t

#[repr(u32)]
#[non_exhaustive]pub enum dnnl_query_t {
    dnnl_query_undef,
    dnnl_query_engine,
    dnnl_query_primitive_kind,
    dnnl_query_num_of_inputs_s32,
    dnnl_query_num_of_outputs_s32,
    dnnl_query_time_estimate_f64,
    dnnl_query_memory_consumption_s64,
    dnnl_query_scratchpad_engine,
    dnnl_query_impl_info_str,
    dnnl_query_reorder_src_engine,
    dnnl_query_reorder_dst_engine,
    dnnl_query_prop_kind,
    dnnl_query_some_d,
    dnnl_query_op_d,
    dnnl_query_convolution_d,
    dnnl_query_deconvolution_d,
    dnnl_query_shuffle_d,
    dnnl_query_eltwise_d,
    dnnl_query_softmax_d,
    dnnl_query_pooling_d,
    dnnl_query_lrn_d,
    dnnl_query_batch_normalization_d,
    dnnl_query_layer_normalization_d,
    dnnl_query_inner_product_d,
    dnnl_query_rnn_d,
    dnnl_query_gemm_d,
    dnnl_query_binary_d,
    dnnl_query_logsoftmax_d,
    dnnl_query_matmul_d,
    dnnl_query_resampling_d,
    dnnl_query_some_md,
    dnnl_query_src_md,
    dnnl_query_diff_src_md,
    dnnl_query_weights_md,
    dnnl_query_diff_weights_md,
    dnnl_query_dst_md,
    dnnl_query_diff_dst_md,
    dnnl_query_workspace_md,
    dnnl_query_scratchpad_md,
    dnnl_query_exec_arg_md,
}

Primitive descriptor query specification

For generic function dnnl_primitive_desc_query(), the type of result must agree with the queried argument. The correspondence table:

Query kindType of query result
#dnnl_query_engine#dnnl_engine_t *
#dnnl_query_scratchpad_engine#dnnl_engine_t *
#dnnl_query_primitive_kind#dnnl_primitive_kind_t *
dnnl_query_*_s32int *
dnnl_query_*_s64#dnnl_dim_t * (same as int64_t *)
dnnl_query_*_f64double *
dnnl_query_*_strconst char **
#dnnl_query_op_d#const_dnnl_op_desc_t *
dnnl_query_*_mdconst #dnnl_memory_desc_t **
dnnl_query_*_<op>_dconst dnnl_<op>_desc_t **
dnnl_query_*_pd#const_dnnl_primitive_desc_t *

@note Rule of thumb: all opaque types and structures are returned by reference. All numbers are returned by value.

@warning All returned references point to constant objects and are valid only during the lifetime of the queried primitive descriptor. Returned objects must not be destroyed by the user. If you need to keep the object longer than the lifetime of the queried primitive descriptor, use dnnl_primitive_desc_clone() to make a copy.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
dnnl_query_undef

< no query

dnnl_query_engine

< execution engine

dnnl_query_primitive_kind

< primitive kind

dnnl_query_num_of_inputs_s32

< number of inputs expected

dnnl_query_num_of_outputs_s32

< number of outputs expected

dnnl_query_time_estimate_f64

< runtime estimation (seconds)

dnnl_query_memory_consumption_s64

< memory consumption -- extra

dnnl_query_scratchpad_engine

< scratchpad engine -- engine to be used

dnnl_query_impl_info_str

< implementation name

dnnl_query_reorder_src_engine

< source engine

dnnl_query_reorder_dst_engine

< destination engine

dnnl_query_prop_kind

< propagation kind

dnnl_query_some_d

< stub

dnnl_query_op_d

< op descriptor

dnnl_query_convolution_d

< convolution descriptor

dnnl_query_deconvolution_d

< deconvolution descriptor

dnnl_query_shuffle_d

< shuffle descriptor

dnnl_query_eltwise_d

< eltwise descriptor

dnnl_query_softmax_d

< softmax descriptor

dnnl_query_pooling_d

< pooling descriptor

dnnl_query_lrn_d

< lrn descriptor

dnnl_query_batch_normalization_d

< batch normalization descriptor

dnnl_query_layer_normalization_d

< layer normalization descriptor

dnnl_query_inner_product_d

< inner product descriptor

dnnl_query_rnn_d

< rnn descriptor

dnnl_query_gemm_d

< GEMM descriptor (internal)

dnnl_query_binary_d

< binary descriptor

dnnl_query_logsoftmax_d

< logsoftmax descriptor

dnnl_query_matmul_d

< matrix multiplication (matmul) descriptor

dnnl_query_resampling_d

< resampling descriptor

dnnl_query_some_md

< stub

dnnl_query_src_md

< source memory desc

dnnl_query_diff_src_md

< source gradient memory desc

dnnl_query_weights_md

< weights memory descriptor desc

dnnl_query_diff_weights_md

< weights grad. memory desc

dnnl_query_dst_md

< destination memory desc

dnnl_query_diff_dst_md

< destination grad. memory desc

dnnl_query_workspace_md

< workspace memory desc

dnnl_query_scratchpad_md

< scratchpad memory desc

dnnl_query_exec_arg_md

< memory desc of an execute argument

Trait Implementations

impl Clone for dnnl_query_t[src]

impl Copy for dnnl_query_t[src]

impl Debug for dnnl_query_t[src]

impl Eq for dnnl_query_t[src]

impl Hash for dnnl_query_t[src]

impl PartialEq<dnnl_query_t> for dnnl_query_t[src]

impl StructuralEq for dnnl_query_t[src]

impl StructuralPartialEq for dnnl_query_t[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.