oneAPI Deep Neural Network Library (oneDNN)
Performance library for Deep Learning
1.96.0

An encapsulation of execution context tied to a particular engine. More...

Classes

struct  dnnl::stream
 An execution stream. More...
 
struct  dnnl_stream
 An opaque structure to describe an execution stream. More...
 

Typedefs

typedef struct dnnl_streamdnnl_stream_t
 An execution stream handle.
 
typedef const struct dnnl_streamconst_dnnl_stream_t
 A constant execution stream handle.
 
typedef struct dnnl_stream_attr * dnnl_stream_attr_t
 An execution stream attributes handle.
 
typedef const struct dnnl_stream_attr * const_dnnl_stream_attr_t
 A constant execution stream attributes handle.
 

Enumerations

enum  dnnl_stream_flags_t
 Stream flags. More...
 

Functions

dnnl_status_t DNNL_API dnnl_stream_create (dnnl_stream_t *stream, dnnl_engine_t engine, unsigned flags)
 Creates an execution stream. More...
 
dnnl_status_t DNNL_API dnnl_stream_get_engine (const_dnnl_stream_t stream, dnnl_engine_t *engine)
 Returns the engine of a stream object. More...
 
dnnl_status_t DNNL_API dnnl_stream_wait (dnnl_stream_t stream)
 Waits for all primitives in the execution stream to finish computations. More...
 
dnnl_status_t DNNL_API dnnl_stream_destroy (dnnl_stream_t stream)
 Destroys an execution stream. More...
 

Detailed Description

An encapsulation of execution context tied to a particular engine.

See also
Basic Concepts

Enumeration Type Documentation

◆ dnnl_stream_flags_t

Stream flags.

Enumerator
dnnl_stream_out_of_order 

Out-of-order execution.

dnnl_stream_default_flags 

Default stream configuration.

Function Documentation

◆ dnnl_stream_create()

dnnl_status_t DNNL_API dnnl_stream_create ( dnnl_stream_t stream,
dnnl_engine_t  engine,
unsigned  flags 
)

Creates an execution stream.

Parameters
streamOutput execution stream.
engineEngine to create the execution stream on.
flagsStream behavior flags (
See also
dnnl_stream_flags_t).
Returns
dnnl_success on success and a status describing the error otherwise.
Examples:
cnn_inference_f32.c, cpu_cnn_training_f32.c, and cross_engine_reorder.c.

◆ dnnl_stream_get_engine()

dnnl_status_t DNNL_API dnnl_stream_get_engine ( const_dnnl_stream_t  stream,
dnnl_engine_t engine 
)

Returns the engine of a stream object.

Parameters
streamStream object.
engineOutput engine on which the stream is created.
Returns
dnnl_success on success and a status describing the error otherwise.

◆ dnnl_stream_wait()

dnnl_status_t DNNL_API dnnl_stream_wait ( dnnl_stream_t  stream)

Waits for all primitives in the execution stream to finish computations.

Parameters
streamExecution stream.
Returns
dnnl_success on success and a status describing the error otherwise.
Examples:
cnn_inference_f32.c, cpu_cnn_training_f32.c, and cross_engine_reorder.c.

◆ dnnl_stream_destroy()

dnnl_status_t DNNL_API dnnl_stream_destroy ( dnnl_stream_t  stream)

Destroys an execution stream.

Parameters
streamExecution stream to destroy.
Returns
dnnl_success on success and a status describing the error otherwise.
Examples:
cnn_inference_f32.c, cpu_cnn_training_f32.c, and cross_engine_reorder.c.