Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic CPU utilization on large diagram (Read 1836 times)
boekhocg
YaBB Newbies
*
Offline


I love YaBB 1G - SP1!

Posts: 4
Joined: Dec 6th, 2006
CPU utilization on large diagram
Dec 9th, 2010 at 2:48pm
Print Post  
Hi, I'm currently using NetDiagram 3.1.1 with ASP.NET 3.5 SP1
The diagram in question has 782 Nodes and 1564 NodeLinks.
When calling the Arrange method, we experience 100%CPU utilization and runs continually without timing out and thus locks up the server.
Could you please advice on any options for improving the performance, impeding 100% CPU, and/or timing out/killing thread after a certain amount of time? What are my options?

Below is a sample code.
========================================================================

LayeredLayout ll = new LayeredLayout();
ll.TimeLimit = 5000;
ll.LayerDistance = 50;
ll.NodeDistance = 75;
ll.SplitLayers = true;
ll.Orientation = MindFusion.Diagramming.Layout.Orientation.Horizontal;
ll.MultipleGraphsPlacement = MultipleGraphsPlacement.Vertical;
ll.EnforceLinkFlow = true ;
ll.Arrange(fc);

========================================================================

Please advice,

  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: CPU utilization on large diagram
Reply #1 - Dec 9th, 2010 at 3:24pm
Print Post  
Hi,

Try setting SwapPairsIterations to 1 or 0. That should speed up the algorithm at the price of more link crossings.

If using applet mode, you could run the layout on the client side to avoid loading the server.

You might also consider splitting the graph into several pages if there is some criteria by which you can group the nodes. The users are not likely to grasp that much information at the same time anyway.

If the graph cannot be split but nodes can be clustered in groups, you could run some other layout on each cluster using the Arrange(DiagramItemCollection) overload, and then group them and run LayeredLayout with KeepGroupLayout enabled. That would lead to processing each group as a single node.

I hope that helps,
Stoyan
  
Back to top
 
IP Logged
 
boekhocg
YaBB Newbies
*
Offline


I love YaBB 1G - SP1!

Posts: 4
Joined: Dec 6th, 2006
Re: CPU utilization on large diagram
Reply #2 - Dec 9th, 2010 at 4:28pm
Print Post  
Thank you for your prompt response and suggestions. SwapPairsIterations=0 did improve the speed alot (although still consuming 100%CPU). I will take the other suggesstions into consideration as well.

Thank you,
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint