aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2016-12-21 10:43:40 -0800
committerGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2016-12-21 10:43:40 -0800
commitc19fe5e9ed24923b5c80867b38c9823da13ff76e (patch)
tree577889e5b82ea75bc5168c5f9d3839659abd4a7d
parenta34d4ebd74b606d3a6c8ae5e95df07b7d9db6435 (diff)
Added support for libxsmm in the eigen makefiles
-rw-r--r--cmake/FindXsmm.cmake24
-rw-r--r--unsupported/test/CMakeLists.txt9
2 files changed, 33 insertions, 0 deletions
diff --git a/cmake/FindXsmm.cmake b/cmake/FindXsmm.cmake
new file mode 100644
index 000000000..745414c72
--- /dev/null
+++ b/cmake/FindXsmm.cmake
@@ -0,0 +1,24 @@
+# libxsmm
+
+if (XSMM_INCLUDES AND XSMM_LIBRARIES)
+ set(XSMM_FIND_QUIETLY TRUE)
+endif (XSMM_INCLUDES AND XSMM_LIBRARIES)
+
+find_path(XSMM_INCLUDES
+ NAMES
+ scotch.h
+ PATHS
+ $ENV{XSMMDIR}
+ ${INCLUDE_INSTALL_DIR}
+ PATH_SUFFIXES
+ scotch
+)
+
+
+find_library(XSMM_LIBRARIES xsmm PATHS $ENV{XSMMDIR} ${LIB_INSTALL_DIR})
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(XSMM DEFAULT_MSG
+ XSMM_INCLUDES XSMM_LIBRARIES)
+
+mark_as_advanced(XSMM_INCLUDES XSMM_LIBRARIES)
diff --git a/unsupported/test/CMakeLists.txt b/unsupported/test/CMakeLists.txt
index daedb671c..c8511b345 100644
--- a/unsupported/test/CMakeLists.txt
+++ b/unsupported/test/CMakeLists.txt
@@ -21,6 +21,15 @@ include_directories(../../test ../../unsupported ../../Eigen
find_package (Threads)
+find_package(Xsmm)
+if(XSMM_FOUND)
+ add_definitions("-DEIGEN_USE_LIBXSMM")
+ include_directories(${XSMM_INCLUDES})
+ ei_add_property(EIGEN_TESTED_BACKENDS "Xsmm, ")
+else(XSMM_FOUND)
+ ei_add_property(EIGEN_MISSING_BACKENDS "Xsmm, ")
+endif(XSMM_FOUND)
+
find_package(GoogleHash)
if(GOOGLEHASH_FOUND)
add_definitions("-DEIGEN_GOOGLEHASH_SUPPORT")