mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Simplify GEBP micro-kernel and improve blocking heuristics
libeigen/eigen!2142 Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -804,6 +804,15 @@
|
||||
// NOTE: Intel C++ Compiler Classic (icc) Version 19.0 and later supports dynamic allocation
|
||||
// for over-aligned data, but not in a manner that is compatible with Eigen.
|
||||
// See https://gitlab.com/libeigen/eigen/-/issues/2575
|
||||
// Does the compiler support C++17 if constexpr?
|
||||
#ifndef EIGEN_HAS_CXX17_IFCONSTEXPR
|
||||
#if EIGEN_MAX_CPP_VER >= 17 && EIGEN_COMP_CXXVER >= 17 && \
|
||||
((EIGEN_COMP_MSVC >= 1911) || (EIGEN_GNUC_STRICT_AT_LEAST(7, 0, 0)) || (EIGEN_CLANG_STRICT_AT_LEAST(3, 9, 0)) || \
|
||||
(EIGEN_COMP_CLANGAPPLE && EIGEN_COMP_CLANGAPPLE >= 10000000))
|
||||
#define EIGEN_HAS_CXX17_IFCONSTEXPR 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef EIGEN_HAS_CXX17_OVERALIGN
|
||||
#if EIGEN_MAX_CPP_VER >= 17 && EIGEN_COMP_CXXVER >= 17 && \
|
||||
((EIGEN_COMP_MSVC >= 1912) || (EIGEN_GNUC_STRICT_AT_LEAST(7, 0, 0)) || (EIGEN_CLANG_STRICT_AT_LEAST(5, 0, 0)) || \
|
||||
|
||||
@@ -44,6 +44,7 @@ eigen_add_benchmark(bench_quatmul quatmul.cpp)
|
||||
eigen_add_benchmark(bench_sparse_dense_product sparse_dense_product.cpp)
|
||||
eigen_add_benchmark(bench_sparse_product sparse_product.cpp)
|
||||
eigen_add_benchmark(bench_sparse_transpose sparse_transpose.cpp)
|
||||
eigen_add_benchmark(bench_spmv spmv.cpp)
|
||||
|
||||
# --- GEMM blocking parameter sweep ---
|
||||
eigen_add_benchmark(bench_blocking_sizes benchmark_blocking_sizes.cpp)
|
||||
|
||||
Reference in New Issue
Block a user