[Soc-2013-dev] Weekly Report #7 Threaded Dependency Graph

Sergey Sharybin sergey.vfx at gmail.com
Sat Aug 3 07:53:37 CEST 2013


Hi,

= This week =

- Added check for address being freed by mempool free (this helped
troubleshooting some issues, and think this commit better be merged to
trunk)

- Added check for whether thread lock is being removed while thread is
using guarded alloc. This allows to detect cases when malloc lock is
removed while guardedalloc is used by the thread. Disabled by default and
better be also merged to trunk.

- Optimization and threading fix for shapekeys weights calculation. Fixes
crash when the same mesh with shapekeys is shared between different
threads. And this also gives ~1.7 speedup ion test chinchilla files.
Use one global task scheduler for all kind of tasks. This removes overhead
caused by threads launching, and also allows to use tasks for such things
as subdivision surface (as an alternative to current OpenMP which conflicts
with threaded object update).

- Fix typo which lead to crash when applying lattice modifier.

- Hack to workaround dead-lock caused by GIL when scene update is invoked
from Python.

= Next week =

- This week discovered unexpected high CPU usage by spin-lock which
currently needs for safe update DAG children when it's parent was updated.
Ideally the code need to be changed to use atomic subtract. There's rather
small implementations of this guy in jemalloc which we could easily re-use
(due to it's cross-platform nature, the file we need is couple of kilos of
code).

- Would work on finishing current part of the project (there're still some
issues with metaballs, defweights could be optimized a bit more, and some
other remaining issues in the code). After discussion with Campbell we
decided to completely finish current stuff before going to next challenges.

- Would need to glue together with Joshua..

= Questions =
None yet.

-- 
With best regards, Sergey Sharybin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/soc-2013-dev/attachments/20130802/09e8d6e2/attachment.htm 


More information about the Soc-2013-dev mailing list