Blender Git Commit Log

Git Commits -> Revision 35d3b63

Revision 35d3b63 by Jeroen Bakker (master)
January 19, 2015, 17:17 (GMT)
D627: Memory usage optimization for the compositor.

The compostor used a fixed size of 4 floats to hold pixel data. this
patch will select size of a pixel based on its type.
It uses 1 float for Value, 3 float for vector and 4 floats for color
data types.

When benchmarking on shots (opening shot of caminandes) we get a
reduction of memory of 30% and a tiny speedup as less data
transformations needs to take place (but these are negligable.

More information of the patch can be found on
https://developer.blender.org/D627 and
http://wiki.blender.org/index.php/Dev:Ref/Proposals/Compositor2014_p1.1_TD

Developers: jbakker & mdewanchand
Thanks for Sergey for his indept review.

Commit Details:

Full Hash: 35d3b6316b21ad9ae7eb96a7a541c4051eae3441
Parent Commit: a8fa291
Lines Changed: +364, -442

2 Deleted Paths:

/source/blender/compositor/intern/COM_ChannelInfo.cpp (+0, -35)
/source/blender/compositor/intern/COM_ChannelInfo.h (+0, -121)

46 Modified Paths:

/source/blender/compositor/CMakeLists.txt (+0, -2) (Diff)
/source/blender/compositor/COM_defines.h (+3, -1) (Diff)
/source/blender/compositor/intern/COM_ExecutionSystem.cpp (+14, -2) (Diff)
/source/blender/compositor/intern/COM_MemoryBuffer.cpp (+54, -37) (Diff)
/source/blender/compositor/intern/COM_MemoryBuffer.h (+77, -62) (Diff)
/source/blender/compositor/intern/COM_MemoryProxy.cpp (+2, -1) (Diff)
/source/blender/compositor/intern/COM_MemoryProxy.h (+8, -1) (Diff)
/source/blender/compositor/intern/COM_NodeOperationBuilder.cpp (+4, -4) (Diff)
/source/blender/compositor/intern/COM_OpenCLDevice.cpp (+29, -5) (Diff)
/source/blender/compositor/intern/COM_OpenCLDevice.h (+6, -0) (Diff)
/source/blender/compositor/intern/COM_WorkScheduler.cpp (+1, -1) (Diff)
/source/blender/compositor/nodes/COM_SocketProxyNode.cpp (+3, -2) (Diff)
/source/blender/compositor/nodes/COM_TranslateNode.cpp (+2, -2) (Diff)
/source/blender/compositor/operations/COM_AntiAliasOperation.cpp (+1, -1) (Diff)
/source/blender/compositor/operations/COM_BokehBlurOperation.cpp (+2, -2) (Diff)
/source/blender/compositor/operations/COM_CompositorOperation.cpp (+3, -3) (Diff)
/source/blender/compositor/operations/COM_ConvertOperation.cpp (+9, -11) (Diff)
/source/blender/compositor/operations/COM_DilateErodeOperation.cpp (+12, -13) (Diff)
/source/blender/compositor/operations/COM_DoubleEdgeMaskOperation.cpp (+2, -4) (Diff)
/source/blender/compositor/operations/COM_FastGaussianBlurOperation.cpp (+13, -12) (Diff)
/source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp (+3, -4) (Diff)
/source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp (+2, -2) (Diff)
/source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp (+3, -3) (Diff)
/source/blender/compositor/operations/COM_GlareBaseOperation.cpp (+1, -1) (Diff)
/source/blender/compositor/operations/COM_GlareFogGlowOperation.cpp (+9, -9) (Diff)
/source/blender/compositor/operations/COM_GlareGhostOperation.cpp (+3, -3) (Diff)
/source/blender/compositor/operations/COM_GlareStreaksOperation.cpp (+1, -1) (Diff)
/source/blender/compositor/operations/COM_InpaintOperation.cpp (+2, -2) (Diff)
/source/blender/compositor/operations/COM_KeyingBlurOperation.cpp (+2, -2) (Diff)
/source/blender/compositor/operations/COM_KeyingClipOperation.cpp (+2, -2) (Diff)
/source/blender/compositor/operations/COM_MapUVOperation.cpp (+5, -5) (Diff)
/source/blender/compositor/operations/COM_NormalizeOperation.cpp (+1, -1) (Diff)
/source/blender/compositor/operations/COM_QualityStepHelper.cpp (+3, -3) (Diff)
/source/blender/compositor/operations/COM_ReadBufferOperation.cpp (+15, -6) (Diff)
/source/blender/compositor/operations/COM_ReadBufferOperation.h (+2, -1) (Diff)
/source/blender/compositor/operations/COM_RenderLayersProg.cpp (+20, -29) (Diff)
/source/blender/compositor/operations/COM_SetVectorOperation.cpp (+0, -1) (Diff)
/source/blender/compositor/operations/COM_SunBeamsOperation.cpp (+4, -4) (Diff)
/source/blender/compositor/operations/COM_TextureOperation.cpp (+10, -8) (Diff)
/source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp (+16, -13) (Diff)
/source/blender/compositor/operations/COM_VectorBlurOperation.cpp (+2, -4) (Diff)
/source/blender/compositor/operations/COM_VectorCurveOperation.cpp (+0, -1) (Diff)
/source/blender/compositor/operations/COM_WrapOperation.cpp (+1, -1) (Diff)
/source/blender/compositor/operations/COM_WrapOperation.h (+1, -1) (Diff)
/source/blender/compositor/operations/COM_WriteBufferOperation.cpp (+10, -12) (Diff)
/source/blender/compositor/operations/COM_WriteBufferOperation.h (+1, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021