[Bf-blender-cvs] [c7329da14b2] master: Build: use TBB as Embree tasking system

Brecht Van Lommel noreply at git.blender.org
Fri Jun 5 01:00:14 CEST 2020


Commit: c7329da14b224f93e93f54c24d42a05dda18ce19
Author: Brecht Van Lommel
Date:   Thu Jun 4 15:12:31 2020 +0200
Branches: master
https://developer.blender.org/rBc7329da14b224f93e93f54c24d42a05dda18ce19

Build: use TBB as Embree tasking system

This avoids launching additional threads and solves some console warnings on
Linux + AMD Ryzen CPU.

===================================================================

M	build_files/build_environment/cmake/embree.cmake

===================================================================

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)



More information about the Bf-blender-cvs mailing list