33 #ifndef EIGEN_MKL_SUPPORT_H
34 #define EIGEN_MKL_SUPPORT_H
36 #ifdef EIGEN_USE_MKL_ALL
37 #ifndef EIGEN_USE_BLAS
38 #define EIGEN_USE_BLAS
40 #ifndef EIGEN_USE_LAPACKE
41 #define EIGEN_USE_LAPACKE
43 #ifndef EIGEN_USE_MKL_VML
44 #define EIGEN_USE_MKL_VML
48 #ifdef EIGEN_USE_LAPACKE_STRICT
49 #define EIGEN_USE_LAPACKE
52 #if defined(EIGEN_USE_MKL_VML)
56 #if defined EIGEN_USE_MKL
59 # ifndef INTEL_MKL_VERSION
61 # elif INTEL_MKL_VERSION < 100305
64 # ifndef EIGEN_USE_MKL
66 # undef EIGEN_USE_MKL_ALL
67 # undef EIGEN_USE_LAPACKE
68 # undef EIGEN_USE_MKL_VML
69 # undef EIGEN_USE_LAPACKE_STRICT
70 # undef EIGEN_USE_LAPACKE
74 #if defined EIGEN_USE_MKL
76 #define EIGEN_MKL_VML_THRESHOLD 128
81 #define EIGEN_MKL_DOMAIN_ALL MKL_DOMAIN_ALL
83 #define EIGEN_MKL_DOMAIN_ALL MKL_ALL
86 #ifdef MKL_DOMAIN_BLAS
87 #define EIGEN_MKL_DOMAIN_BLAS MKL_DOMAIN_BLAS
89 #define EIGEN_MKL_DOMAIN_BLAS MKL_BLAS
93 #define EIGEN_MKL_DOMAIN_FFT MKL_DOMAIN_FFT
95 #define EIGEN_MKL_DOMAIN_FFT MKL_FFT
99 #define EIGEN_MKL_DOMAIN_VML MKL_DOMAIN_VML
101 #define EIGEN_MKL_DOMAIN_VML MKL_VML
104 #ifdef MKL_DOMAIN_PARDISO
105 #define EIGEN_MKL_DOMAIN_PARDISO MKL_DOMAIN_PARDISO
107 #define EIGEN_MKL_DOMAIN_PARDISO MKL_PARDISO
113 typedef std::complex<double> dcomplex;
114 typedef std::complex<float> scomplex;
116 #if defined(EIGEN_USE_MKL)
117 typedef MKL_INT BlasIndex;
119 typedef int BlasIndex;
124 #if defined(EIGEN_USE_BLAS)
125 #include "../../misc/blas.h"
Namespace containing all symbols from the Eigen library.
Definition: Core:287