Developer Reference

Contents

Overview of Intel® oneAPI Math Kernel Library (oneMKL) LAPACK for DPC++

The following pages describe the oneMKL LAPACK routines for DPC++ in detail, all of which are declared in the header file
oneapi/mkl/lapack.hpp
.
Several conventions are used throughout this document:
  • All oneMKL for DPC++ functions and data types are inside the
    mkl
    namespace.
  • For brevity, the
    cl::sycl
    namespace is omitted from DPC++ object types, such as buffers and queues. For example a single-precision, 1D buffer
    A
    would be written
    buffer<float,1> &A
    instead of
    cl::sycl::buffer<float,1> &A
    .
  • A question mark
    (?)
    in a routine name stands for one or more characters (typically one of s, d, c, z) specifying the precision of the operation. Each routine has a table detailing the supported precisions and associated routine names.

Device Support

DPC++ supports several types of devices:
  • Host device: Performs computations directly on the current CPU.
  • CPU device: Performs computations on a CPU using OpenCL™.
  • GPU device: Performs computations on a GPU.
Each routine details the device types are currently supported.
In the current release of oneMKL LAPACK for DPC++, all routines support at least the host and CPU devices. GPU devices are supported in the current release only for the following routines:
Routines
getrf
(all precisions)
getrs
(all precisions)
trtrs
(all precisions)
potrf
(real precisions)
potrs
(real precisions)
getri
(real precisions)

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.