Blender Git Commit Log

Git Commits -> Revision 14f3b2c

Revision 14f3b2c by Campbell Barton (master)
June 9, 2021, 14:55 (GMT)
BLI_task: add TLS support to BLI_task_parallel_mempool

Support thread local storage for BLI_task_parallel_mempool,
as well as support for the reduce and free callbacks.

mempool_iter_threadsafe_* functions have been moved into a private
header thats only shared between task_iterator.c and BLI_mempool.c
so the TLS can be made part of the iterator array without having to
rely on passing in struct offsets.

Add test task.MempoolIterTLS that ensures reduce and free
are working as expected.

Reviewed By: mont29

Ref D11548

Commit Details:

Full Hash: 14f3b2cdad2d7b00ce3ea27bf8eb0087ac2a6cbd
Parent Commit: f546b08
Lines Changed: +295, -77

1 Added Path:

/source/blender/blenlib/intern/BLI_mempool_private.h (+45, -0) (View)

10 Modified Paths:

/source/blender/blenkernel/intern/armature_deform.c (+12, -4) (Diff)
/source/blender/blenkernel/intern/lattice_deform.c (+12, -4) (Diff)
/source/blender/blenlib/BLI_mempool.h (+0, -5) (Diff)
/source/blender/blenlib/BLI_task.h (+11, -2) (Diff)
/source/blender/blenlib/CMakeLists.txt (+3, -0) (Diff)
/source/blender/blenlib/intern/BLI_mempool.c (+13, -14) (Diff)
/source/blender/blenlib/intern/task_iterator.c (+63, -18) (Diff)
/source/blender/blenlib/tests/BLI_task_test.cc (+100, -2) (Diff)
/source/blender/bmesh/intern/bmesh_iterators_inline.h (+4, -4) (Diff)
/source/blender/bmesh/intern/bmesh_mesh_normals.c (+32, -24) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021