- split and rename defined tokens to enable the use of BLAS/Lapack/VML/etc

- include MKL headers outside the Eigen namespace.
This commit is contained in:
Gael Guennebaud
2011-12-09 10:06:49 +01:00
parent 015c331252
commit 43cdd242d0
17 changed files with 53 additions and 37 deletions

View File

@@ -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
#endif
#elif defined EIGEN_USE_BLAS
#include "../../misc/blas.h"
#endif
#endif