|
mxnet
|
|
Enumerations | |
| enum | dnnl_sycl_interop_memory_kind_t { dnnl_sycl_interop_usm, dnnl_sycl_interop_buffer } |
| Memory allocation kind. More... | |
| dnnl_status_t DNNL_API dnnl_sycl_interop_engine_create | ( | dnnl_engine_t * | engine, |
| const void * | device, | ||
| const void * | context | ||
| ) |
Creates an engine associated with a SYCL device and a SYCL context.
| engine | Output engine. |
| device | Pointer to the SYCL device to use for the engine. |
| context | Pointer to the SYCL context to use for the engine. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_engine_get_context | ( | dnnl_engine_t | engine, |
| void ** | context | ||
| ) |
Returns the SYCL context associated with an engine.
| engine | Engine to query. |
| context | Pointer to the underlying SYCL context of the engine. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_engine_get_device | ( | dnnl_engine_t | engine, |
| void ** | device | ||
| ) |
Returns the SYCL device associated with an engine.
| engine | Engine to query. |
| device | Pointer to the underlying SYCL device of the engine. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_memory_create | ( | dnnl_memory_t * | memory, |
| const dnnl_memory_desc_t * | memory_desc, | ||
| dnnl_engine_t | engine, | ||
| dnnl_sycl_interop_memory_kind_t | memory_kind, | ||
| void * | handle | ||
| ) |
Creates a memory object.
Unless handle is equal to DNNL_MEMORY_NONE or DNNL_MEMORY_ALLOCATE, the constructed memory object will have the underlying buffer set. In this case, the buffer will be initialized as if:
memory_kind is equal to dnnl_sycl_interop_usm, ormemory_kind is equal to dnnl_sycl_interop_buffer.| memory | Output memory object. |
| memory_desc | Memory descriptor. |
| engine | Engine to use. |
| memory_kind | Memory allocation kind to specify the type of handle. |
| handle | Handle of the memory buffer to use as an underlying storage.
|
| dnnl_status_t DNNL_API dnnl_sycl_interop_memory_get_memory_kind | ( | const_dnnl_memory_t | memory, |
| dnnl_sycl_interop_memory_kind_t * | memory_kind | ||
| ) |
Returns the memory allocation kind associated with a memory object.
| memory | Memory to query. |
| memory_kind | Output underlying memory allocation kind of the memory object. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_memory_set_buffer | ( | dnnl_memory_t | memory, |
| void * | buffer, | ||
| dnnl_stream_t | stream | ||
| ) |
Sets a SYCL buffer for a memory object.
| memory | Memory object. |
| buffer | SYCL buffer to be set in the memory object. |
| stream | Stream to use to execute padding in. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_primitive_execute | ( | const_dnnl_primitive_t | primitive, |
| dnnl_stream_t | stream, | ||
| int | nargs, | ||
| const dnnl_exec_arg_t * | args, | ||
| const void * | deps, | ||
| void * | return_event | ||
| ) |
Executes computations specified by the primitive in a specified stream and returns a SYCL event.
| primitive | Primitive to execute. |
| stream | Stream to use. |
| nargs | Number of arguments. |
| args | Array of arguments. Each argument is an <index, dnnl_memory_t> pair. The index is one of the DNNL_ARG_* values such as DNNL_ARG_SRC. Unless runtime shapes are used (see DNNL_RUNTIME_DIM_VAL), the memory object must have the same memory descriptor as that returned by dnnl_primitive_desc_query_md(dnnl_query_exec_arg_md, index). |
| deps | A pointer to std::vector<sycl::event> that contains dependencies. |
| return_event | Output event. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_stream_create | ( | dnnl_stream_t * | stream, |
| dnnl_engine_t | engine, | ||
| void * | queue | ||
| ) |
Creates an execution stream for a given engine associated with a SYCL queue.
| stream | Output execution stream. |
| engine | Engine to create the execution stream on. |
| queue | SYCL queue to use. |
| dnnl_status_t DNNL_API dnnl_sycl_interop_stream_get_queue | ( | dnnl_stream_t | stream, |
| void ** | queue | ||
| ) |
Returns the SYCL queue associated with an execution stream.
| stream | Execution stream to query. |
| queue | Output SYCL command queue. |
1.8.13