blender/intern/cycles
Sergey Sharybin 1862fbf203 Cycles: Optimize memory usage when creating mesh attributes
The idea behind the change is to pre-allocate attribute arrays in advance,
which avoids re-allocation of arrays later for each of meshes being handled.

This reduces peak memory used by Cycles database from 1.3G to 0.9G for
victor.blend from Gooseberry.

It doesn't mean every file will benefit from this change since peak memory
usage is happening in the different places of the rendering code.

Also, unfortunately, attributes export might not cause the peak of render
preparation stage. That said, it's actually object_to_mesh() which causes
the memory to peak in the same test file. So we really need to optimize that
part first in order to get visible results for artists. But in any case it's
now quite easy to track hotspots in Cycles itself which is good.
2015-02-15 02:01:48 +05:00
..
app Cycles: Fix compilation error of Cycles standalone with Libmv disabled 2015-02-14 21:33:14 +05:00
blender Use the RNA for overriding the name instead. 2015-02-12 19:59:34 +01:00
bvh Cycles: Use bool for is_lead array 2015-01-31 01:49:41 +05:00
cmake Cycles: Post-reintegration tweaks to ensure things do compile 2015-01-01 01:31:08 +05:00
device Cycles: Fix inconsistent command line used for runtime kernel compilation 2015-02-02 15:00:21 +05:00
doc Cycles: relicense GNU GPL source code to Apache version 2.0. 2013-08-18 14:16:15 +00:00
kernel Cycles: Small improvement for volume render (decoupled) 2015-02-14 20:44:30 +01:00
render Cycles: Optimize memory usage when creating mesh attributes 2015-02-15 02:01:48 +05:00
subd Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
util Cycles: Add ifdef switch to use blender's guardedalloc for vector allocation 2015-02-15 02:01:48 +05:00
CMakeLists.txt Cycles: Post-reintegration tweaks to ensure things do compile 2015-01-01 01:31:08 +05:00
SConscript Cycles: Post-reintegration tweaks to ensure things do compile 2015-01-01 01:31:08 +05:00