Blender Git Commit Log

Git Commits -> Revision 1686979

Revision 1686979 by Jacques Lucke (master)
December 13, 2021, 12:28 (GMT)
Geometry Nodes: move up destruct instructions in procedure

This implements an optimization pass for multi-function procedures.
It optimizes memory reuse by moving destruct instructions up.
For more details see the in-code comment.

In very large fields with many short lived intermediate values, this change
can improve performance 3-4x. Furthermore, in such cases, peak memory
consumption is reduced significantly (e.g. 100x lower peak memory usage).

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

Commit Details:

Full Hash: 1686979747c3b551ec91e8a3b1c7a9724ca381b2
Parent Commit: e549d6c
Lines Changed: +160, -4

2 Added Paths:

/source/blender/functions/FN_multi_function_procedure_optimization.hh (+61, -0) (View)
/source/blender/functions/intern/multi_function_procedure_optimization.cc (+90, -0) (View)

3 Modified Paths:

/source/blender/functions/CMakeLists.txt (+2, -0) (Diff)
/source/blender/functions/FN_field.hh (+0, -3) (Diff)
/source/blender/functions/intern/field.cc (+7, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021