Loading...
Searching...
No Matches
34#ifndef EIGEN_MKL_SUPPORT_H
35#define EIGEN_MKL_SUPPORT_H
40#ifdef EIGEN_USE_MKL_ALL
44#ifndef EIGEN_USE_LAPACKE
45#define EIGEN_USE_LAPACKE
47#ifndef EIGEN_USE_MKL_VML
48#define EIGEN_USE_MKL_VML
52#ifdef EIGEN_USE_LAPACKE_STRICT
53#define EIGEN_USE_LAPACKE
56#if defined(EIGEN_USE_MKL_VML) && !defined(EIGEN_USE_MKL)
60#if defined EIGEN_USE_MKL
61#if (!defined MKL_DIRECT_CALL) && (!defined EIGEN_MKL_NO_DIRECT_CALL)
62#define MKL_DIRECT_CALL
63#define MKL_DIRECT_CALL_JUST_SET
67#ifndef INTEL_MKL_VERSION
69#elif INTEL_MKL_VERSION < \
75#undef EIGEN_USE_MKL_ALL
76#undef EIGEN_USE_LAPACKE
77#undef EIGEN_USE_MKL_VML
78#undef EIGEN_USE_LAPACKE_STRICT
79#ifdef MKL_DIRECT_CALL_JUST_SET
85#if defined EIGEN_USE_MKL
87#define EIGEN_MKL_VML_THRESHOLD 128
92#define EIGEN_MKL_DOMAIN_ALL MKL_DOMAIN_ALL
94#define EIGEN_MKL_DOMAIN_ALL MKL_ALL
98#define EIGEN_MKL_DOMAIN_BLAS MKL_DOMAIN_BLAS
100#define EIGEN_MKL_DOMAIN_BLAS MKL_BLAS
104#define EIGEN_MKL_DOMAIN_FFT MKL_DOMAIN_FFT
106#define EIGEN_MKL_DOMAIN_FFT MKL_FFT
110#define EIGEN_MKL_DOMAIN_VML MKL_DOMAIN_VML
112#define EIGEN_MKL_DOMAIN_VML MKL_VML
115#ifdef MKL_DOMAIN_PARDISO
116#define EIGEN_MKL_DOMAIN_PARDISO MKL_DOMAIN_PARDISO
118#define EIGEN_MKL_DOMAIN_PARDISO MKL_PARDISO
129#ifndef EIGEN_BLAS_INT
130#if defined(EIGEN_64BIT_BLAS)
131#define EIGEN_BLAS_INT std::int64_t
133#define EIGEN_BLAS_INT int
142#ifndef EIGEN_BLAS_SYMBOL_SUFFIX
143#define EIGEN_BLAS_SYMBOL_SUFFIX
148#define EIGEN_BLAS_POSTFIX EIGEN_CAT(EIGEN_BLAS_SYMBOL_SUFFIX, _)
149#define EIGEN_BLAS_SYM(NAME) EIGEN_CAT(NAME, EIGEN_BLAS_POSTFIX)
151#if defined(EIGEN_USE_BLAS) && !defined(EIGEN_USE_MKL)
156#include "../InternalHeaderCheck.h"
162#include "BlasTypes.h"