Developer Reference

  • 0.10
  • 10/21/2020
  • Public Content
Contents

LAPACK Functionality

All of the DPC++ LAPACK computational routines have a corresponding
*_scratchpad_size
function for calculating the required amount of scratchpad space.
LU Factorization Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
getrf
Yes
Yes
Yes
Yes
Yes
Yes
getrs
Yes
Yes
Yes
Yes
Yes
Yes
getri
Yes
Yes
Yes
Yes
Yes
Yes
Cholesky Factorization Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
potrf
Yes
Yes
Yes
No
Yes
No
potrs
Yes
Yes
Yes
No
Yes
No
potri
Yes
Yes
Yes
No
Yes
No
Orthogonal Factorization Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
geqrf
Yes
Yes
Yes
Yes
Yes
Yes
{or,un}gqr
Yes
Yes
Yes
Yes
Yes
Yes
{or,un}mqr
Yes
Yes
Yes
Yes
Yes
Yes
gerqf
Yes
No
Yes
No
Yes
No
{or,un}mrq
Yes
No
Yes
No
Yes
No
Other Linear Equation Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
trtrs
Yes
Yes
Yes
Yes
Yes
Yes
{sy,he}trf
Yes
No
Yes
No
Yes
No
Symmetric Eigenvalue Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
{sy,he}ev
Yes
Yes
Yes
Yes
Yes
Yes
{sy,he}evd
Yes
Yes
Yes
Yes
Yes
Yes
{sy,he}evx
Yes
Yes
Yes
Yes
Yes
Yes
{sy,he}trd
Yes
Yes
Yes
Yes
Yes
Yes
{or,un}gtr
Yes
No
Yes
No
Yes
No
{or,un}mtr
Yes
No
Yes
No
Yes
No
steqr
Yes
Yes
Yes
Yes
Yes
Yes
Generalized Symmetric Eigenvalue Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
{sy,he}gvd
Yes
Yes
Yes
Yes
Yes
Yes
{sy,he}gvx
Yes
Yes
Yes
Yes
Yes
Yes
Singular Value Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
gesvd
Yes
Yes
Yes
No
Yes
No
gebrd
Yes
Yes
Yes
Yes
Yes
Yes
{or,un}gbr
Yes
No
Yes
No
Yes
No
Batched LAPACK Routines
Functionality
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
getrf_batch
Yes
Yes
No
No
No
No
getrs_batch
Yes
Yes
No
No
No
No
getri_batch
Yes
Yes
No
No
No
No
potrf_batch
Yes
Yes
No
No
No
No
potrs_batch
Yes
Yes
No
No
No
No
geqrf_batch
Yes
Yes
No
No
No
No
{or,un}gqr_batch
Yes
Yes
No
No
No
No
Other LAPACK Routines
DPC++ CPU
DPC++ GPU
C CPU
C OpenMP Offload GPU (ILP64 Interface)
Fortran CPU
Fortran OpenMP Offload GPU (ILP64 Interface)
No
No
Yes
No
Yes
No

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804