diff options
author | Brecht Van Lommel <brecht@blender.org> | 2020-06-04 16:12:31 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2020-06-05 01:58:31 +0300 |
commit | c7329da14b224f93e93f54c24d42a05dda18ce19 (patch) | |
tree | 73dde49215dda0bd588d58f7fe9ea0e5a28d97a3 /build_files | |
parent | 0b28f0410ce5b90f75d3b5138fae2105d3ff1771 (diff) |
Build: use TBB as Embree tasking system
This avoids launching additional threads and solves some console warnings on
Linux + AMD Ryzen CPU.
Diffstat (limited to 'build_files')
-rw-r--r-- | build_files/build_environment/cmake/embree.cmake | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/build_files/build_environment/cmake/embree.cmake b/build_files/build_environment/cmake/embree.cmake index 2dd42614cc0..428451d0115 100644 --- a/build_files/build_environment/cmake/embree.cmake +++ b/build_files/build_environment/cmake/embree.cmake @@ -26,10 +26,20 @@ set(EMBREE_EXTRA_ARGS -DEMBREE_RAY_MASK=ON -DEMBREE_FILTER_FUNCTION=ON -DEMBREE_BACKFACE_CULLING=OFF - -DEMBREE_TASKING_SYSTEM=INTERNAL -DEMBREE_MAX_ISA=AVX2 + -DEMBREE_TASKING_SYSTEM=TBB + -DEMBREE_TBB_ROOT=${LIBDIR}/tbb + -DTBB_STATIC_LIB=${TBB_STATIC_LIBRARY} ) +if(TBB_STATIC_LIBRARY) + set(EMBREE_EXTRA_ARGS + ${EMBREE_EXTRA_ARGS} + -DEMBREE_TBB_LIBRARY_NAME=tbb_static + -DEMBREE_TBBMALLOC_LIBRARY_NAME=tbbmalloc_static + ) +endif() + if(WIN32) set(EMBREE_BUILD_DIR ${BUILD_MODE}/) else() @@ -44,6 +54,12 @@ ExternalProject_Add(external_embree CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS} INSTALL_DIR ${LIBDIR}/embree ) + +add_dependencies( + external_embree + external_tbb +) + if(WIN32) if(BUILD_MODE STREQUAL Release) |