Closed
Description
oneMKL is an open-source implementation of the oneMKL Data Parallel C++ (DPC++) interface according to the oneMKL specification. The library provides backends for CUDA as well as Intel MKL. In addition, it is possible to dynamically select a backend based on a SYCL queue.
Our example should demonstrate how dpctl's infrastructure can be used to easily create a Python module for oneMKL.
A high-level design can we as follows:
- Expose the
onemkl::gemm
routine asmatmul
. - Introduce convenience types
mat
andvec
that are based ondpctl.tensor.usm_ndarray
. - The function should accept a
SyclQueue
,mat
, and optionally a list ofSyclEvent
objects and return aSyclEvent
object. - Demonstrate the usage of
SyclTimer
to time execution. - Demonstrate ways to print a matrix/vector by first copying them into
Numpy.ndarray
. - Demonstrate ways to populate a matrix/vector.
Metadata
Metadata
Assignees
Labels
No labels