Quantcast
Channel: Intel Developer Zone Articles
Viewing all articles
Browse latest Browse all 3384

Intel® Math Kernel Library (Intel® MKL) SP2DP Interface Support is Now Removed

$
0
0

The single-precision to double-precision (SP2DP) interface maps single-precision (for both real and complex types) BLAS and LAPACK routines in Intel® Math Kernel Library (Intel® MKL) to double-precision routines in Intel MKL. It does not change the behavior of double-precision routines.

The SP2DP interface was provided to make it easier to use Intel MKL BLAS and LAPACK for Fortran applications that follow the BLAS and LAPACK routine naming convention of the Cray* Fortran library. It was only applicable on Intel® 64 architectures. In the 64-bit Cray Fortran library, single precision data types are always mapped to 64-bit types since there are no double precision data types. So, for example, an SGEMM call in the Cray Fortran library is equivalent to a DGEMM call in Intel MKL. The SP2DP interface helped applications that follow this convention to use Intel MKL, which does differentiate 32-bit and 64-bit real and complex data types on Intel 64 architectures.

SP2DP interface was deprecated in Intel MKL 11.3 Update 2 and is removed from future releases starting with the Intel MKL 2017 Beta.

If you used the Intel MKL SP2DP interface, then now you must modify your code by renaming routine calls from {S,C}<FUNCTION> to {D,Z}<FUNCTION> and replace Intel MKL SP2DP interface library with Intel MKL ILP64 interface library in your link line. For example,

SGEMM -> DGEMM

CGEMM -> ZGEMM

For mixed-precision and other non-standard functions you must follow the table below.

 

Single-precision function

Double-precision function

CSROT

ZDROT

CSSCAL

ZDSCAL

SCASUM

DZASUM

SCGEMM

DZGEMM

SCGEMV

DZGEMV

SCNRM2

DZNRM2

DSDOT

DDOT

SDSDOT(n, sb, dx, incx, dy, incy)

sb + DDOT(n, dx, incx, dy, incy)

ICAMAX

IZAMAX

ICAMIN

IZAMIN

ISAMAX

IDAMAX

ISAMIN

IDAMIN


Viewing all articles
Browse latest Browse all 3384

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>