Blender Git Loki

Git Commits -> Revision d22c061

Revision d22c061 by Sergey Sharybin (compositor-2016)
June 8, 2016, 19:45 (GMT)
Cycles: Reduce amount of malloc() calls from the kernel

This commit makes it so malloc() is only happening once per volume and
once per transparent shadow query (per thread), improving scalability of
the code to multiple CPU cores.

Hard to measure this with a low-bottom i7 here currently, but from quick
tests seems volume sampling gave about 3-5% speedup.

The idea is to store allocated memory in kernel globals, which are per
thread on CPU already.

Reviewers: dingto, juicyfruit, lukasstockner97, maiself, brecht

Reviewed By: brecht

Subscribers: Blendify, nutel

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

Commit Details:

Full Hash: d22c061d15f6bb64ef8ce5138467869227bb4dc5
Parent Commit: 440aed9
Committed By: Jeroen Bakker
Lines Changed: +83, -21

4 Modified Paths:

/intern/cycles/device/device_cpu.cpp (+36, -9) (Diff)
/intern/cycles/kernel/kernel_globals.h (+11, -0) (Diff)
/intern/cycles/kernel/kernel_shadow.h (+9, -9) (Diff)
/intern/cycles/kernel/kernel_volume.h (+27, -3) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021