Skip to content

Commit

Permalink
use either tbb or openmp
Browse files Browse the repository at this point in the history
and prefer openmp, if VISTLE_USE_OPENMP is set
  • Loading branch information
aumuell committed Jan 22, 2025
1 parent 4cc40ed commit c843a26
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 50 deletions.
37 changes: 20 additions & 17 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,26 @@ if(NOT VISTLE_GUI_ONLY)
endif()
endif()

if(NOT OPENMP_FOUND)
# prefer a TBBConfig.cmake over FindTBB.cmake
vistle_find_package(TBB CONFIG NO_MODULE)

if(NOT ${TBB_FOUND})
vistle_find_package(TBB)

if(NOT (${CMAKE_GENERATOR} STREQUAL "Visual Studio 17 2022"))
if(${TBB_FOUND} AND NOT TARGET TBB::tbb)
add_library(TBB::tbb SHARED IMPORTED)
set_target_properties(
TBB::tbb
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${TBB_INCLUDE_DIRS}"
INTERFACE_LINK_LIBRARIES "${TBB_LIBRARIES}"
IMPORTED_LOCATION "${TBB_LIBRARY}")
endif()
endif()
endif()
endif()

if(CMAKE_VERSION VERSION_LESS 3.12)
message(WARNING "CMake 3.12 or newer is required for compiling Python support")
else()
Expand All @@ -410,23 +430,6 @@ if(NOT VISTLE_GUI_ONLY)
set(ICET_MPI_LIBS "IceTMPI")
set(ICET_FOUND TRUE)

# prefer a TBBConfig.cmake over FindTBB.cmake
vistle_find_package(TBB CONFIG NO_MODULE)

if(NOT ${TBB_FOUND})
vistle_find_package(TBB)

if(NOT (${CMAKE_GENERATOR} STREQUAL "Visual Studio 17 2022"))
if(${TBB_FOUND} AND NOT TARGET TBB::tbb)
add_library(TBB::tbb SHARED IMPORTED)
set_target_properties(
TBB::tbb
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${TBB_INCLUDE_DIRS}"
INTERFACE_LINK_LIBRARIES "${TBB_LIBRARIES}"
IMPORTED_LOCATION "${TBB_LIBRARY}")
endif()
endif()
endif()
endif(NOT VISTLE_GUI_ONLY)

set(ASAN_COMPILE_FLAGS "")
Expand Down
24 changes: 4 additions & 20 deletions module/map/IsoSurface/IsoSurface.cmake
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
use_openmp()

set(PREFER_TBB TRUE)
set(USE_TBB FALSE)

set(SOURCES
${SOURCES}
../IsoSurface/IsoSurface.cpp
Expand All @@ -12,31 +9,18 @@ set(SOURCES
../IsoSurface/Leveller.cpp
../IsoSurface/Leveller.h)

if(TBB_FOUND AND PREFER_TBB)
add_definitions(-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_TBB)
set(USE_TBB TRUE)
elseif(OPENMP_FOUND)
set(USE_TBB FALSE)
if(OPENMP_FOUND AND VISTLE_USE_OPENMP)
add_definitions(-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_OMP)
elseif(TBB_FOUND)
add_definitions(-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_TBB)
set(USE_TBB TRUE)
else()
add_definitions(-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CPP)
endif()

if(TBB_FOUND AND PREFER_TBB)
add_definitions(-DUSE_TBB)
add_definitions(-DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_TBB)
set(USE_TBB TRUE)
elseif(OPENMP_FOUND)
add_definitions(-DUSE_OMP)
add_definitions(-DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_OMP)
use_openmp()
elseif(TBB_FOUND)
add_definitions(-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_TBB)
add_definitions(-DUSE_TBB)
add_definitions(-DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_TBB)
set(USE_TBB TRUE)
else()
add_definitions(-DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CPP)
add_definitions(-DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP)
add_definitions(-DUSE_CPP)
endif()
Expand Down
13 changes: 0 additions & 13 deletions module/render/OsgRenderer/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,6 @@ if(EGL_FOUND)
set(EGL_SOURCES EGLWindow.h EGLWindow.cpp)
endif()

set(USE_TBB FALSE)
if(OPENMP_FOUND)
use_openmp()
elseif(TBB_FOUND)
add_definitions(-DUSE_TBB)
include_directories(SYSTEM ${TBB_INCLUDE_DIRS})
set(USE_TBB TRUE)
endif()

add_module(
OsgRenderer
"OpenSceneGraph remote renderer"
Expand Down Expand Up @@ -65,7 +56,3 @@ target_link_libraries(
vistle_renderer
vistle_rhr
${ZLIB_LIBRARIES})

if(USE_TBB)
target_link_libraries(OsgRenderer ${TBB_LIBRARIES})
endif()

0 comments on commit c843a26

Please sign in to comment.