Blender Git Commit Log
Git Commits -> Revision ceff86a
Revision ceff86a by Erik Abrahamsson (master) July 5, 2021, 22:09 (GMT) |
Various Exact Boolean parallelizations and optimizations. From patch D11780 from Erik Abrahamsson. It parallelizes making the vertices, destruction of map entries, finding if the result is PWN, finding triangle adjacencies, and finding the ambient cell. The latter needs a parallel_reduce from tbb, so added one into BLI_task.hh so that if WITH_TBB is false, the code will still work. On Erik's 6-core machine, the elapsed time went from 17.5s to 11.8s (33% faster) on an intersection of two spheres with 3.1M faces. On Howard's 24-core machine, the elapsed time went from 18.7s to 10.8s for the same test. |
Commit Details:
Full Hash: ceff86aafe46a6fb66e023500f5a47260964b0a2
Parent Commit: cf17f7e
Committed By: Howard Trickey
Lines Changed: +286, -97
5 Modified Paths:
/source/blender/blenkernel/intern/mesh_boolean_convert.cc (+30, -13) (Diff)
/source/blender/blenlib/BLI_mesh_intersect.hh (+1, -0) (Diff)
/source/blender/blenlib/BLI_task.hh (+22, -0) (Diff)
/source/blender/blenlib/intern/mesh_boolean.cc (+137, -70) (Diff)
/source/blender/blenlib/intern/mesh_intersect.cc (+96, -14) (Diff)
/source/blender/blenlib/BLI_mesh_intersect.hh (+1, -0) (Diff)
/source/blender/blenlib/BLI_task.hh (+22, -0) (Diff)
/source/blender/blenlib/intern/mesh_boolean.cc (+137, -70) (Diff)
/source/blender/blenlib/intern/mesh_intersect.cc (+96, -14) (Diff)