View Issue Details

IDProjectCategoryView StatusLast Update
0003955Slicer4Core: Performancepublic2015-02-17 10:57
ReporterpinterAssigned Tojcfr 
PrioritynormalSeverityminorReproducibilityalways
Status acknowledgedResolutionopen 
Product VersionSlicer 4.4.0 
Target VersionFixed in Version 
Summary0003955: Store color nodes in a private MRML scene
Description

One of the main performance issues in Slicer is that in case of high number of nodes and visited modules, all the scene models that have been instantiated iterate over all the MRML nodes in the scene.

The problem is that right after startup there are 109 nodes, 66 of which are color nodes. This issue could be solved relatively easily by handling the color nodes in the same way the volume rendering presets are handled: in a private MRML scene, from which the nodes are transferred in the Slicer MRML scene only on demand.

Related discussion:
http://slicer-devel.65872.n3.nabble.com/Scalar-ranges-on-model-volume-and-color-nodes-td4030886.html#a4030975

TagsNo tags attached.

Activities

jcfr

jcfr

2015-02-09 12:47

administrator   ~0012902

Reminder sent to: nicole

Hi Nicole,

Assuming we apply this approach, do you anticipate any issue with existing scene (SPL Atlas, ...) ?

The idea would be teach the xml parser to ignore nodes that match the properties of the built-in one ..

nicole

nicole

2015-02-09 13:35

administrator   ~0012903

I think the issue to be careful of will be with user loaded color nodes. They need to be saved with the scene and restored properly.

lassoan

lassoan

2015-02-16 12:04

developer   ~0012915

Actually, there are 80 color nodes and 25 other nodes. So, storing the unused color nodes in the scene increases the number of nodes by more than a factor of 3!

nicole

nicole

2015-02-17 10:57

administrator   ~0012917

Last edited: 2015-02-17 11:20

Note from Slicer Dev Hangout Feb 18: consider making a new subclass color node mrml combo box that has a second private scene and can copy nodes over the main scene?

EDIT (Jc): See also http://www.slicer.org/slicerWiki/index.php/Developer_Meetings/20150217

Issue History

Date Modified Username Field Change
2015-02-09 12:37 pinter New Issue
2015-02-09 12:37 pinter Status new => assigned
2015-02-09 12:37 pinter Assigned To => jcfr
2015-02-09 12:40 jcfr Status assigned => acknowledged
2015-02-09 12:47 jcfr Note Added: 0012902
2015-02-09 13:35 nicole Note Added: 0012903
2015-02-16 12:04 lassoan Note Added: 0012915
2015-02-17 10:57 nicole Note Added: 0012917
2015-02-17 11:20 jcfr Note Edited: 0012917