ID 505474 - Slow UI performance when merging many TimeOffset nodes with unique inputFrame parameter values to a NetworkMaterialCreate node

Follow

Problem summary
Merging many TimeOffset nodes with different inputFrame parameter values and connecting all the TimeOffset nodes to a large network material network will cause UI performance issues.
 
Customer reported version
katana.4.0v7
 
Customer reported platform
centos7
 
Steps to reproduce
1)  In a new Katana interactive session, copy and paste a NetworkMaterialCreate node with a large material network. 
 
2) Run the following Python script in the Python tab to generate many merged TimeOffset nodes:
root = NodegraphAPI.GetRootNode()pos = NodegraphAPI.GetViewPortPosition(root)loc = NodegraphAPI.CreateNode('LocationCreate', root)group = NodegraphAPI.CreateNode('Group', root)merge = NodegraphAPI.CreateNode('Merge', group)count = 1000for idx in range(count):    child = NodegraphAPI.CreateNode('TimeOffset', group)    NodegraphAPI.SetNodePosition(child, (pos[0][0] + (150 * idx) % 2000, pos[0][1]-(50*(idx//(2000/150)))))    param = child.getParameter('inputFrame')    param.setExpressionFlag(False)    param.setValue(idx, 0)    child.getInputPort("input").connect(loc.getOutputPort("out"))    merge.addInputPort('i' + str(idx)).connect(child.getOutputPort("output"))rs = NodegraphAPI.CreateNode('RenderSettings', NodegraphAPI.GetRootNode())rs.getInputPort("input").connect(merge.getOutputPort('out'))NodegraphAPI.SetNodePosition(merge, (pos[0][0] + 1000, pos[0][1]-(50*(count//(2000/150))+ 100)))NodegraphAPI.SetNodePosition(loc, (pos[0][0], pos[0][1]+ 50))NodegraphAPI.SetNodePosition(rs, (pos[0][0], pos[0][1]-50))
 
2) Replace the LocationCreate node with a complex NetworkMaterialCreate node.
 
3) Set the Edit flag on the RenderSettings node
 
Expected behavior
The Parameters tab shows the parameters as fast as usual.
 
Actual behavior
The Parameters tab takes several seconds to display the parameters. 
The UI in general becomes more sluggish such as interacting with further downstream nodes.
 
Workaround
Unknown.
 
Reproduced by support
This bug has been reproduced in:
Katana 5.0v2 - Windows 10
Katana 5.0v1 - Windows 10
Katana 4.5v2 - Windows 10
Katana 4.5v1 - Windows 10
Katana 4.0v1 - Windows 10
Katana 3.6v1 - Windows 10
Katana 3.5v1 - Windows 10
Katana 3.2v4 - Windows 10
 
Possible, unable to reproduce bug in:
Katana 3.2v1 - Windows 10
 
Earliest version tested
Katana 3.2v1 - NMC did not exist before this version
 

    We're sorry to hear that

    Please tell us why