Browse Source

Updated CMakeLists.txt, added an option for Intel TBB

Edited gmm_blas.h, reordered includes
tempestpy_adaptions
PBerger 12 years ago
parent
commit
2a8920aeef
  1. 6
      CMakeLists.txt
  2. 9
      resources/3rdparty/gmm-4.2/include/gmm/gmm_blas.h

6
CMakeLists.txt

@ -48,6 +48,7 @@ message(STATUS "GMMXX_INCLUDE_DIR is ${GMMXX_INCLUDE_DIR}")
option(DEBUG "Sets whether the DEBUG mode is used" ON) option(DEBUG "Sets whether the DEBUG mode is used" ON)
option(USE_POPCNT "Sets whether the popcnt instruction is going to be used." ON) option(USE_POPCNT "Sets whether the popcnt instruction is going to be used." ON)
option(USE_BOOST_STATIC_LIBRARIES "Sets whether the Boost libraries should be linked statically." ON) option(USE_BOOST_STATIC_LIBRARIES "Sets whether the Boost libraries should be linked statically." ON)
option(USE_INTELTBB "Sets whether the Intel TBB Extensions should be used." OFF)
# If the DEBUG option was turned on, we will target a debug version and a release version otherwise # If the DEBUG option was turned on, we will target a debug version and a release version otherwise
if (DEBUG) if (DEBUG)
@ -155,6 +156,11 @@ endif(Boost_FOUND)
# Intels Thread Building Blocks # Intels Thread Building Blocks
if (TBB_FOUND) if (TBB_FOUND)
message(STATUS "Found TBB with Interface Version ${TBB_INTERFACE_VERSION}") message(STATUS "Found TBB with Interface Version ${TBB_INTERFACE_VERSION}")
if(USE_INTELTBB)
add_definitions(-DGMM_USE_TBB)
endif()
include_directories(${TBB_INCLUDE_DIRS}) include_directories(${TBB_INCLUDE_DIRS})
link_directories(${TBB_LIBRARY_DIRS}) link_directories(${TBB_LIBRARY_DIRS})
endif(TBB_FOUND) endif(TBB_FOUND)

9
resources/3rdparty/gmm-4.2/include/gmm/gmm_blas.h

@ -38,6 +38,13 @@
#ifndef GMM_BLAS_H__ #ifndef GMM_BLAS_H__
#define GMM_BLAS_H__ #define GMM_BLAS_H__
#ifdef GMM_USE_TBB
# include <new> // This fixes a potential dependency ordering problem between GMM and TBB
# include "tbb/tbb.h"
# include <iterator>
#endif
#include "gmm_scaled.h" #include "gmm_scaled.h"
#include "gmm_transposed.h" #include "gmm_transposed.h"
#include "gmm_conjugated.h" #include "gmm_conjugated.h"
@ -395,8 +402,6 @@ namespace gmm {
} }
#ifdef GMM_USE_TBB #ifdef GMM_USE_TBB
#include "tbb/tbb.h"
#include <iterator>
/* Official Intel Hint on blocked_range vs. linear iterators: http://software.intel.com/en-us/forums/topic/289505 /* Official Intel Hint on blocked_range vs. linear iterators: http://software.intel.com/en-us/forums/topic/289505
*/ */

Loading…
Cancel
Save