View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0013851VTK(No Category)public2013-02-01 12:212013-04-05 19:01
ReporterMatthias Schneider 
Assigned ToBerk Geveci 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version5.10.1 
Target VersionFixed in Version 
Summary0013851: Serious performance issue in vtkGraphs when removing vertices
DescriptionvtkGraph seems to have a serious bottleneck when removing vertices from the graph structure.

vtkGraph::RemoveVerticesInternal() internally calls vtkGraph::RemoveVertexInternal() which recomputes the edge list structure in every call:

vtkGraph.cxx:1458ff

this->ForceOwnership();
this->BuildEdgeList(); // This function assumes the edge list is created.

I am not totally sure abut the additional comment concerning the assumption.
I could not find any reason for an unconditional update of the edge list so far.
Therefore, I'd suggest to add the following condition:

this->ForceOwnership();
if (!this->EdgeList) {
  this->BuildEdgeList();
}

Other functions seem to call BuildEdgeList() with exactly the same condition.
TagsNo tags attached.
ProjectTBD
Typeperformance
Attached Files

 Relationships

  Notes
(0030306)
Jean-Christophe Fillion-Robin (manager)
2013-02-04 16:30

Hi Matthias,

Thanks for reporting the issue and proposing a patch.

I would recommend you to submit your patch through Gerrit.

See http://www.vtk.org/Wiki/VTK/Git/Develop [^]

Thanks
Jc
(0030308)
Matthias Schneider (reporter)
2013-02-05 10:50

Patch has been submitted:
http://review.source.kitware.com/9620 [^]
(0030317)
Jean-Christophe Fillion-Robin (manager)
2013-02-07 09:20

Previous patch has been abandoned - See http://review.source.kitware.com/#/c/9640/ [^]

 Issue History
Date Modified Username Field Change
2013-02-01 12:21 Matthias Schneider New Issue
2013-02-04 16:30 Jean-Christophe Fillion-Robin Note Added: 0030306
2013-02-05 10:50 Matthias Schneider Note Added: 0030308
2013-02-07 09:20 Jean-Christophe Fillion-Robin Note Added: 0030317
2013-04-05 19:00 Berk Geveci Assigned To => Berk Geveci
2013-04-05 19:00 Berk Geveci Status backlog => todo
2013-04-05 19:00 Berk Geveci Status todo => active development
2013-04-05 19:00 Berk Geveci Status active development => gatekeeper review
2013-04-05 19:00 Berk Geveci Resolution open => fixed
2013-04-05 19:01 Berk Geveci Status gatekeeper review => customer review
2013-04-05 19:01 Berk Geveci Status customer review => closed


Copyright © 2000 - 2018 MantisBT Team