Blender Git Commit Log
Git Commits -> Revision 1862fbf
Revision 1862fbf by Sergey Sharybin (master) February 14, 2015, 21:01 (GMT) |
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. |
Commit Details:
Full Hash: 1862fbf203b84b622d80846bd6d2f76f3cada434
Parent Commit: 18937f6
Lines Changed: +114, -26
1 Modified Path:
/intern/cycles/render/mesh.cpp (+114, -26) (Diff)