Blender Git Commit Log

Git Commits -> Revision 86869ee

Revision 86869ee by Bastien Montagne (compositor-2016)
June 8, 2016, 19:45 (GMT)
BLI_task: Add new 'BLI_task_parallel_range_finalize()'.

Together with the extended loop callback and userdata_chunk, this allows to perform
cumulative tasks (like aggregation) in a lockfree way using local userdata_chunk to store temp data,
and once all workers have finished, to merge those userdata_chunks in the finalize callback
(from calling thread, so no need to lock here either).

Note that this changes how userdata_chunk is handled (now fully from 'main' thread,
which means a given worker thread will always get the same userdata_chunk, without
being re-initialized anymore to init value at start of each iter chunk).

Commit Details:

Full Hash: 86869ee30c42322090da9e3b93cf8dd663ac042f
Parent Commit: ac078ab
Committed By: Jeroen Bakker
Lines Changed: +77, -22

2 Modified Paths:

/source/blender/blenlib/BLI_task.h (+13, -1) (Diff)
/source/blender/blenlib/intern/task.c (+64, -21) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021