mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-07-21 12:24:25 +08:00
fix more warnings in MKL support
This commit is contained in:
parent
57b5767fe2
commit
1741dbce1a
@ -143,7 +143,7 @@ EIGEN_MKL_VML_SPECIALIZE_ASSIGN(SliceVectorizedTraversal,NoUnrolling)
|
|||||||
#define EIGEN_MKL_VML_DECLARE_UNARY_CALL(EIGENOP, VMLOP, EIGENTYPE, VMLTYPE) \
|
#define EIGEN_MKL_VML_DECLARE_UNARY_CALL(EIGENOP, VMLOP, EIGENTYPE, VMLTYPE) \
|
||||||
template<> struct vml_call< scalar_##EIGENOP##_op<EIGENTYPE> > { \
|
template<> struct vml_call< scalar_##EIGENOP##_op<EIGENTYPE> > { \
|
||||||
enum { IsSupported = 1 }; \
|
enum { IsSupported = 1 }; \
|
||||||
static inline void run( const scalar_##EIGENOP##_op<EIGENTYPE>& func, \
|
static inline void run( const scalar_##EIGENOP##_op<EIGENTYPE>& /*func*/, \
|
||||||
int size, const EIGENTYPE* src, EIGENTYPE* dst) { \
|
int size, const EIGENTYPE* src, EIGENTYPE* dst) { \
|
||||||
VMLOP(size, (const VMLTYPE*)src, (VMLTYPE*)dst); \
|
VMLOP(size, (const VMLTYPE*)src, (VMLTYPE*)dst); \
|
||||||
} \
|
} \
|
||||||
@ -152,7 +152,7 @@ EIGEN_MKL_VML_SPECIALIZE_ASSIGN(SliceVectorizedTraversal,NoUnrolling)
|
|||||||
#define EIGEN_MKL_VML_DECLARE_UNARY_CALL_LA(EIGENOP, VMLOP, EIGENTYPE, VMLTYPE) \
|
#define EIGEN_MKL_VML_DECLARE_UNARY_CALL_LA(EIGENOP, VMLOP, EIGENTYPE, VMLTYPE) \
|
||||||
template<> struct vml_call< scalar_##EIGENOP##_op<EIGENTYPE> > { \
|
template<> struct vml_call< scalar_##EIGENOP##_op<EIGENTYPE> > { \
|
||||||
enum { IsSupported = 1 }; \
|
enum { IsSupported = 1 }; \
|
||||||
static inline void run( const scalar_##EIGENOP##_op<EIGENTYPE>& func, \
|
static inline void run( const scalar_##EIGENOP##_op<EIGENTYPE>& /*func*/, \
|
||||||
int size, const EIGENTYPE* src, EIGENTYPE* dst) { \
|
int size, const EIGENTYPE* src, EIGENTYPE* dst) { \
|
||||||
MKL_INT64 vmlMode = EIGEN_MKL_VML_MODE; \
|
MKL_INT64 vmlMode = EIGEN_MKL_VML_MODE; \
|
||||||
VMLOP(size, (const VMLTYPE*)src, (VMLTYPE*)dst, vmlMode); \
|
VMLOP(size, (const VMLTYPE*)src, (VMLTYPE*)dst, vmlMode); \
|
||||||
|
@ -58,8 +58,8 @@ static void run(Index rows, Index cols, Index depth, \
|
|||||||
const EIGTYPE* _rhs, Index rhsStride, \
|
const EIGTYPE* _rhs, Index rhsStride, \
|
||||||
EIGTYPE* res, Index resStride, \
|
EIGTYPE* res, Index resStride, \
|
||||||
EIGTYPE alpha, \
|
EIGTYPE alpha, \
|
||||||
level3_blocking<EIGTYPE, EIGTYPE>& blocking, \
|
level3_blocking<EIGTYPE, EIGTYPE>& /*blocking*/, \
|
||||||
GemmParallelInfo<Index>* info = 0) \
|
GemmParallelInfo<Index>* /*info = 0*/) \
|
||||||
{ \
|
{ \
|
||||||
using std::conj; \
|
using std::conj; \
|
||||||
\
|
\
|
||||||
|
@ -124,7 +124,7 @@ struct product_triangular_matrix_matrix_trmm<EIGTYPE,Index,Mode,true, \
|
|||||||
MKL_INT aStride = aa_tmp.outerStride(); \
|
MKL_INT aStride = aa_tmp.outerStride(); \
|
||||||
gemm_blocking_space<ColMajor,EIGTYPE,EIGTYPE,Dynamic,Dynamic,Dynamic> blocking(_rows,_cols,_depth); \
|
gemm_blocking_space<ColMajor,EIGTYPE,EIGTYPE,Dynamic,Dynamic,Dynamic> blocking(_rows,_cols,_depth); \
|
||||||
general_matrix_matrix_product<Index,EIGTYPE,LhsStorageOrder,ConjugateLhs,EIGTYPE,RhsStorageOrder,ConjugateRhs,ColMajor>::run( \
|
general_matrix_matrix_product<Index,EIGTYPE,LhsStorageOrder,ConjugateLhs,EIGTYPE,RhsStorageOrder,ConjugateRhs,ColMajor>::run( \
|
||||||
rows, cols, depth, aa_tmp.data(), aStride, _rhs, rhsStride, res, resStride, alpha, blocking); \
|
rows, cols, depth, aa_tmp.data(), aStride, _rhs, rhsStride, res, resStride, alpha, blocking, 0); \
|
||||||
\
|
\
|
||||||
/*std::cout << "TRMM_L: A is not square! Go to MKL GEMM implementation! " << nthr<<" \n";*/ \
|
/*std::cout << "TRMM_L: A is not square! Go to MKL GEMM implementation! " << nthr<<" \n";*/ \
|
||||||
} \
|
} \
|
||||||
@ -238,7 +238,7 @@ struct product_triangular_matrix_matrix_trmm<EIGTYPE,Index,Mode,false, \
|
|||||||
MKL_INT aStride = aa_tmp.outerStride(); \
|
MKL_INT aStride = aa_tmp.outerStride(); \
|
||||||
gemm_blocking_space<ColMajor,EIGTYPE,EIGTYPE,Dynamic,Dynamic,Dynamic> blocking(_rows,_cols,_depth); \
|
gemm_blocking_space<ColMajor,EIGTYPE,EIGTYPE,Dynamic,Dynamic,Dynamic> blocking(_rows,_cols,_depth); \
|
||||||
general_matrix_matrix_product<Index,EIGTYPE,LhsStorageOrder,ConjugateLhs,EIGTYPE,RhsStorageOrder,ConjugateRhs,ColMajor>::run( \
|
general_matrix_matrix_product<Index,EIGTYPE,LhsStorageOrder,ConjugateLhs,EIGTYPE,RhsStorageOrder,ConjugateRhs,ColMajor>::run( \
|
||||||
rows, cols, depth, _lhs, lhsStride, aa_tmp.data(), aStride, res, resStride, alpha, blocking); \
|
rows, cols, depth, _lhs, lhsStride, aa_tmp.data(), aStride, res, resStride, alpha, blocking, 0); \
|
||||||
\
|
\
|
||||||
/*std::cout << "TRMM_R: A is not square! Go to MKL GEMM implementation! " << nthr<<" \n";*/ \
|
/*std::cout << "TRMM_R: A is not square! Go to MKL GEMM implementation! " << nthr<<" \n";*/ \
|
||||||
} \
|
} \
|
||||||
@ -247,7 +247,7 @@ struct product_triangular_matrix_matrix_trmm<EIGTYPE,Index,Mode,false, \
|
|||||||
char side = 'R', transa, uplo, diag = 'N'; \
|
char side = 'R', transa, uplo, diag = 'N'; \
|
||||||
EIGTYPE *b; \
|
EIGTYPE *b; \
|
||||||
const EIGTYPE *a; \
|
const EIGTYPE *a; \
|
||||||
MKL_INT m, n, lda, ldb, ldc; \
|
MKL_INT m, n, lda, ldb; \
|
||||||
MKLTYPE alpha_; \
|
MKLTYPE alpha_; \
|
||||||
\
|
\
|
||||||
/* Set alpha_*/ \
|
/* Set alpha_*/ \
|
||||||
|
@ -138,7 +138,7 @@ struct triangular_matrix_vector_product_trmv<Index,Mode,EIGTYPE,ConjLhs,EIGTYPE,
|
|||||||
m = rows-size; \
|
m = rows-size; \
|
||||||
n = size; \
|
n = size; \
|
||||||
} \
|
} \
|
||||||
if (size<cols) { \
|
else { \
|
||||||
x += size; \
|
x += size; \
|
||||||
y = _res; \
|
y = _res; \
|
||||||
a = _lhs + size*lda; \
|
a = _lhs + size*lda; \
|
||||||
@ -223,7 +223,7 @@ struct triangular_matrix_vector_product_trmv<Index,Mode,EIGTYPE,ConjLhs,EIGTYPE,
|
|||||||
m = rows-size; \
|
m = rows-size; \
|
||||||
n = size; \
|
n = size; \
|
||||||
} \
|
} \
|
||||||
if (size<cols) { \
|
else { \
|
||||||
x += size; \
|
x += size; \
|
||||||
y = _res; \
|
y = _res; \
|
||||||
a = _lhs + size; \
|
a = _lhs + size; \
|
||||||
|
@ -48,6 +48,7 @@ struct partial_lu_impl<EIGTYPE, StorageOrder, lapack_int> \
|
|||||||
/* \internal performs the LU decomposition in-place of the matrix represented */ \
|
/* \internal performs the LU decomposition in-place of the matrix represented */ \
|
||||||
static lapack_int blocked_lu(lapack_int rows, lapack_int cols, EIGTYPE* lu_data, lapack_int luStride, lapack_int* row_transpositions, lapack_int& nb_transpositions, lapack_int maxBlockSize=256) \
|
static lapack_int blocked_lu(lapack_int rows, lapack_int cols, EIGTYPE* lu_data, lapack_int luStride, lapack_int* row_transpositions, lapack_int& nb_transpositions, lapack_int maxBlockSize=256) \
|
||||||
{ \
|
{ \
|
||||||
|
EIGEN_UNUSED_VARIABLE(maxBlockSize);\
|
||||||
lapack_int matrix_order, first_zero_pivot; \
|
lapack_int matrix_order, first_zero_pivot; \
|
||||||
lapack_int m, n, lda, *ipiv, info; \
|
lapack_int m, n, lda, *ipiv, info; \
|
||||||
EIGTYPE* a; \
|
EIGTYPE* a; \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user