diff options
author | Gael Guennebaud <g.gael@free.fr> | 2016-07-04 14:32:15 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2016-07-04 14:32:15 +0200 |
commit | dacc544b8445930417d827060061797991e5126d (patch) | |
tree | 18615f0233995638979d9b9f817373d16879c754 /bench/perf_monitoring/gemm/lazy_gemm.cpp | |
parent | b74e45906c67ff5166d070c34fe985167f7d4b3e (diff) |
asm escape was not strong enough to prevent too aggressive compiler optimization let's fallback to no-inline.
Diffstat (limited to 'bench/perf_monitoring/gemm/lazy_gemm.cpp')
-rw-r--r-- | bench/perf_monitoring/gemm/lazy_gemm.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/bench/perf_monitoring/gemm/lazy_gemm.cpp b/bench/perf_monitoring/gemm/lazy_gemm.cpp index b443218d7..6dc370155 100644 --- a/bench/perf_monitoring/gemm/lazy_gemm.cpp +++ b/bench/perf_monitoring/gemm/lazy_gemm.cpp @@ -12,12 +12,13 @@ using namespace Eigen; typedef SCALAR Scalar; template<typename MatA, typename MatB, typename MatC> -inline void lazy_gemm(const MatA &A, const MatB &B, MatC &C) +EIGEN_DONT_INLINE +void lazy_gemm(const MatA &A, const MatB &B, MatC &C) { - escape((void*)A.data()); - escape((void*)B.data()); +// escape((void*)A.data()); +// escape((void*)B.data()); C.noalias() += A.lazyProduct(B); - escape((void*)C.data()); +// escape((void*)C.data()); } template<int m, int n, int k, int TA> |