Blender Git Statistics -> Branches -> tmp-task-foreach-pool

"Tmp-task-foreach-pool" branch

Total commits : 11
Total committers : 1
First Commit : November 11, 2019
Latest Commit : November 25, 2019


Commits by Date

DateNumber of Commits
November 25, 20191
November 24, 20190
November 23, 20190
November 22, 20194
November 21, 20192
November 20, 20190
November 19, 20190
November 18, 20190
November 17, 20190
November 16, 20190
November 15, 20190
November 14, 20190
November 13, 20190
November 12, 20191
November 11, 20193

Committers

AuthorNumber of Commits
Bastien Montagne11

Popular Files

FilenameTotal Edits
task.c5
BLI_task.h1
BLI_task_test.cc1
BLI_task_performance_test.cc1

Latest commits Feed

November 25, 2019, 10:53 (GMT)
Merge branch 'master' into tmp-task-foreach-pool
November 22, 2019, 14:51 (GMT)
Add threaded handling of finalize callbacks for parallel range pool.

As suggested by @sergey in review comments, thanks.

Thhis will add a additional speed-up benefit to using those pools when
finalization computations are not trivial.
November 22, 2019, 14:30 (GMT)
Merge branch 'master' into tmp-task-foreach-pool
November 22, 2019, 10:57 (GMT)
More naming consistancy cleanup + fix bug in single thread case with tls data.
November 22, 2019, 10:46 (GMT)
Merge branch 'master' into tmp-task-foreach-pool
November 21, 2019, 15:22 (GMT)
Updates from review (var naming mostly).
November 21, 2019, 14:38 (GMT)
Merge branch 'master' into tmp-task-foreach-pool
November 12, 2019, 11:09 (GMT)
Merge branch 'master' into tmp-task-foreach-pool
November 11, 2019, 14:32 (GMT)
Pool range iter: compute 'static' scheduler chunk size from smallest range.

Computing it from sum of all the ranges is rather stupid and meaning
less, pooled range iterator needs to be at least somewhat dynamic in any
case...
November 11, 2019, 14:26 (GMT)
Merge branch 'master' into tmp-task-foreach-pool
November 11, 2019, 09:34 (GMT)
BLI_task: Initial implementation of pooled threaded index range iterator.

This code allows to push a set of different operations all based on
iterations over a range of indices, and then process them all at once
over multiple threads.

This is mainly interesting for relatively low amount of individual
tasks, as expected.

E.g. performance tests on a 32 threads machine, for a set of 10
different tasks, shows following improvements when using pooled version
instead of ten sequential calls to `BLI_task_parallel_range()`:

| Num Items | Sequential | Pooled | Speed-up |
| --------- | ---------- | ------- | -------- |
| 10K | 365 us | 138 us | 2.5 x |
| 100K | 877 us | 530 us | 1.66 x |
| 1000K | 5521 us | 4625 us | 1.25 x |

Differential Revision: https://developer.blender.org/D6189

MiikaHweb - Blender Git Statistics v1.06
By: Miika HämäläinenLast update: Nov-07-2014 14:18 MiikaHweb | 2003-2020