Blender Git Loki
Git Commits -> Revision bdbd0cf
Revision bdbd0cf by Hans Goudey (master) December 21, 2021, 15:23 (GMT) |
Nodes: Improve performance when freeing a node tree This commit makes freeing a node tree about 25 to 30 times faster. Freeing a node tree happens whenever it is edited. Freeing a node tree with about 4000 nodes went from 30-50ms to about 2 ms. This was so slow before because for every node that was freed when freeing the node tree, `node_free_node` looped over all other nodes to detach frames, and then looped over all links to remove any links connected to the node. That was all pointless work because everything else is about to be freed anyway. Instead, move that "detaching" behavior to the dedicated function for removing a single node, and to the "local" version of the free function to be safe, since I know less about what that version expects. Differential Revision: https://developer.blender.org/D13636 |
Commit Details:
Full Hash: bdbd0cffda697eb5d60edf307771409987f60dc4
Parent Commit: 8cf1994
Lines Changed: +10, -5
1 Modified Path:
/source/blender/blenkernel/intern/node.cc (+10, -5) (Diff)