Dear all,
i'm doing parallel rendering using 2 machines (np4), i notice an obvious
difference between using offscreen-rendering (faster) and without
offscreen-rendering (much slower). i realize this from the timer log:
Case 1: with offscreen-rendering
----------------------------------------------------------
Local Process
Still Render, 0.666444 seconds
Execute vtkMPIMoveData id: 519, 0.000199 seconds
Execute vtkPolyDataMapper id: 311, 0.000106 seconds
Server, Process 0
Execute vtkFileSeriesReader id: 238, 0.645881 seconds
Execute vtkPVGeometryFilter id: 305, 0.005891 seconds
Execute vtkPVCacheKeeper id: 516, 7.8e-05 seconds
Execute vtkMPIMoveData id: 519, 0.000212 seconds
Execute vtkOrderedCompositeDistributor , 0.000152 seconds
Execute vtkPolyDataMapper id: 311, 0.000274 seconds
Server, Process 1
Execute vtkFileSeriesReader id: 238, 0.000275 seconds
Execute vtkPVGeometryFilter id: 305, 0.005299 seconds
Execute vtkPVCacheKeeper id: 516, 7.7e-05 seconds
Execute vtkMPIMoveData id: 519, 0.000147 seconds
Execute vtkOrderedCompositeDistributor , 0.000117 seconds
Execute vtkPolyDataMapper id: 311, 9.9e-05 seconds
Server, Process 2
Execute vtkFileSeriesReader id: 238, 0.000258 seconds
Execute vtkPVGeometryFilter id: 305, 0.004765 seconds
Execute vtkPVCacheKeeper id: 516, 7.7e-05 seconds
Execute vtkMPIMoveData id: 519, 0.000147 seconds
Execute vtkOrderedCompositeDistributor , 0.000111 seconds
Execute vtkPolyDataMapper id: 311, 9.5e-05 seconds
Server, Process 3
Execute vtkFileSeriesReader id: 238, 0.000352 seconds
Execute vtkPVGeometryFilter id: 305, 0.005351 seconds
Execute vtkPVCacheKeeper id: 516, 7.7e-05 seconds
Execute vtkMPIMoveData id: 519, 0.000168 seconds
Execute vtkOrderedCompositeDistributor , 0.000111 seconds
Execute vtkPolyDataMapper id: 311, 0.000108 seconds
---------------------------------------------------------------
Case 2: without offscreen-rendering
---------------------------------------------------------------
Local Process
Still Render, 4.86495 seconds
Execute vtkMPIMoveData id: 520, 2.81566 seconds
Execute vtkPolyDataMapper id: 312, 0.00012 seconds
Execute vtkPolyDataMapper id: 148, 7.6e-05 seconds
Server, Process 0
Execute vtkFileSeriesReader id: 239, 0.659133 seconds
Execute vtkPVGeometryFilter id: 306, 0.026125 seconds
Execute vtkPVCacheKeeper id: 517, 7.8e-05 seconds
Execute vtkMPIMoveData id: 520, 2.53214 seconds
Dataserver gathering to 0, 1.98166 seconds
Dataserver sending to client, 0.549715 seconds
Execute vtkOrderedCompositeDistributor , 0.000175 seconds
Server, Process 1
Execute vtkFileSeriesReader id: 239, 0.000446 seconds
Execute vtkPVGeometryFilter id: 306, 0.026313 seconds
Execute vtkPVCacheKeeper id: 517, 7.3e-05 seconds
Execute vtkMPIMoveData id: 520, 0.232435 seconds
Dataserver gathering to 0, 0.232117 seconds
Execute vtkOrderedCompositeDistributor , 0.00012 seconds
Server, Process 2
Execute vtkFileSeriesReader id: 239, 0.000519 seconds
Execute vtkPVGeometryFilter id: 306, 0.026063 seconds
Execute vtkPVCacheKeeper id: 517, 7e-05 seconds
Execute vtkMPIMoveData id: 520, 1.31373 seconds
Dataserver gathering to 0, 1.31341 seconds
Execute vtkOrderedCompositeDistributor , 0.000119 seconds
Server, Process 3
Execute vtkFileSeriesReader id: 239, 0.000459 seconds
Execute vtkPVGeometryFilter id: 306, 0.004905 seconds
Execute vtkPVCacheKeeper id: 517, 6.9e-05 seconds
Execute vtkMPIMoveData id: 520, 0.764289 seconds
Dataserver gathering to 0, 0.740679 seconds
Execute vtkOrderedCompositeDistributor , 0.000136 seconds
--------------------------------------------------------------------
Unlike Case 2, Case 1 does not show any 'Dataserver gathering to 0' or
'Dataserver sending to client'
so i guess what makes Case 2 slower is because the vtkMPIMoveData is doing
extra thing to move data amongst processes
btw, whenever i run it without -offscreen-rendering, i get this message:
"Display is not accessible on the server side. Remote rendering will be
disabled."
based on what i read from paraview tutorial, what i understand is that the
parallel rendering algorithm allows each process to independently render its
partition of the geometry and then composites the partial images together to
form the final image. Is this what happened in Case 2 because it has
'Dataserver gathering to 0' or 'Dataserver sending to client'?
actually what i dont understand is why case 2 is much slower than case 1?
is it because different 'things' are going on in the processes when
offscreen-rendering is on/off?
any help / reply is highly appreciated
Best Regards,
chewping
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the ParaView Wiki at:
http://paraview.org/Wiki/ParaView
Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview