aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/util/MKL_support.h
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2011-12-09 10:06:49 +0100
committerGravatar Gael Guennebaud <g.gael@free.fr>2011-12-09 10:06:49 +0100
commit43cdd242d0e34aa05e368b3d894c1041aa2cd771 (patch)
treeb9f068f145a293fe0833208aa8185a6f632ac7a0 /Eigen/src/Core/util/MKL_support.h
parent015c331252a3b99c187b5607572f1cec531a4d1e (diff)
- split and rename defined tokens to enable the use of BLAS/Lapack/VML/etc
- include MKL headers outside the Eigen namespace.
Diffstat (limited to 'Eigen/src/Core/util/MKL_support.h')
-rw-r--r--Eigen/src/Core/util/MKL_support.h30
1 files changed, 28 insertions, 2 deletions
diff --git a/Eigen/src/Core/util/MKL_support.h b/Eigen/src/Core/util/MKL_support.h
index 6d78e97b1..56a03fa32 100644
--- a/Eigen/src/Core/util/MKL_support.h
+++ b/Eigen/src/Core/util/MKL_support.h
@@ -33,12 +33,31 @@
#ifndef EIGEN_MKL_SUPPORT_H
#define EIGEN_MKL_SUPPORT_H
+#ifdef EIGEN_USE_MKL_ALL
+ #ifndef EIGEN_USE_BLAS
+ #define EIGEN_USE_BLAS
+ #endif
+ #ifndef EIGEN_USE_MKL_CLAPACK
+ #define EIGEN_USE_MKL_CLAPACK
+ #endif
+ #ifndef EIGEN_USE_MKL_VML
+ #define EIGEN_USE_MKL_VML
+ #endif
+#endif
+
+#if defined(EIGEN_USE_MKL_CLAPACK) || defined(EIGEN_USE_MKL_VML)
+ #define EIGEN_USE_MKL
+#endif
+
+#if defined EIGEN_USE_MKL
+
#include <mkl.h>
#include <mkl_lapacke.h>
-#include <iostream>
#define EIGEN_MKL_VML_THRESHOLD 128
+namespace Eigen {
+
typedef std::complex<double> dcomplex;
typedef std::complex<float> scomplex;
@@ -80,5 +99,12 @@ inline void assign_conj_scalar_eig2mkl<MKL_Complex8,scomplex>(MKL_Complex8& mklS
} // end namespace internal
+} // end namespace Eigen
+
+#elif defined EIGEN_USE_BLAS
+
+#include "../../misc/blas.h"
+
+#endif
-#endif \ No newline at end of file
+#endif