Contents

C Datatypes Specific to Intel MKL

The
mkl_types.h
file defines datatypes specific to
Intel® MKL
.
C/C++ Type
Fortran Type
LP32 Equivalent (Size in Bytes)
LP64 Equivalent (Size in Bytes)
ILP64 Equivalent (Size in Bytes)
MKL_INT
(MKL
integer
)
INTEGER
(default
INTEGER
)
C/C++:
int
Fortran:
INTEGER*4
(4 bytes)
C/C++:
int
Fortran:
INTEGER*4
(4 bytes)
C/C++:
long long
(or define
MKL_ILP64
macros
Fortran:
INTEGER*8
(8 bytes)
MKL_UINT
(MKL
unsigned integer
)
N/A
C/C++:
unsigned int
(4 bytes)
C/C++:
unsigned int
(4 bytes)
C/C++:
unsigned long long
(8 bytes)
MKL_LONG
(MKL
long integer
)
N/A
C/C++:
long
(4 bytes)
C/C++:
long
(Windows: 4 bytes)
(Linux, Mac: 8 bytes)
C/C++:
long
(8 bytes)
MKL_Complex8
(Like C99
complex float
)
COMPLEX*8
(8 bytes)
(8 bytes)
(8 bytes)
MKL_Complex16
(Like C99
complex double
)
COMPLEX*16
(16 bytes)
(16 bytes)
(16 bytes)
You can redefine datatypes specific to
Intel® MKL
. One reason to do this is if you have your own types which are binary-compatible with
Intel® MKL
datatypes, with the same representation or memory layout. To redefine a datatype, use one of these methods:
  • Insert the
    #define
    statement redefining the datatype before the
    mkl.h
    header file
    #include
    statement. For example,
    #define MKL_INT size_t #include "mkl.h"
  • Use the compiler
    -D
    option to redefine the datatype. For example,
    ...-DMKL_INT=size_t...
As the user, if you redefine
Intel® MKL
datatypes you are responsible for making sure that your definition is compatible with that of
Intel® MKL
. If not, it might cause unpredictable results or crash the application.
1

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 reservered 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