[Paraview] Off Screen Rendering

chew ping lcp81um at msn.com
Thu Nov 26 01:50:33 EST 2009


 

Dear all,

 

so based on the timer log results that i collected, what i read about offscreen-rendering and the explanation below, can i conclude the followings? someone pls correct me if i'm wrong!

 

with --use-offscreen-rendering


X windows are disabled on all server processes
all server processes render the geometry locally
then each server processes sends the image to the client for compositing
there's NO data gathering to process 0, meaning the master doesn't collect all images from each processes for composting, then only send it to the client for rendering
that's why --use-offscreen-rendering is faster
 

 

without --use-offscreen-rendering


X windows are enabled on all server processes
all server processes the raw data, then send all geometry to process 0
process 0 gather all geometry then send them to the client to render
the client does all the rendering job
that's why without --use-offscreen-rendering is slower
 

 

any help / reply is highly appreciated
 
Best Regards,
chewping


 


Date: Fri, 20 Nov 2009 10:57:25 +0800
From: weaponfire2005 at 163.com
To: lcp81um at msn.com
CC: paraview at paraview.org
Subject: Re:[Paraview] Off Screen Rendering


hi chew ping:
  The Problem:"Display is not accessible on the server side. Remote rendering will be disabled.", it means that not all server start up X Server, so the server will process the raw data and send all geometry to the client to render.
  The client do all the rendering job, that's the reason why case 2 is so slow, I think.
  When you use off screen, all server processes render the geometry locally , send image to client to composite, so case 1 much faster than case 2.
  I hope this can help you, for I got the same problem before. Good luck.



 

在2009-11-20,"chew ping" <lcp81um at msn.com> 写道:

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
 
 
 
 
 
 
 
 
 
 
 




看陆川杨幂新片《琴棋书画》,品网易3D国韵网游《天下贰》  		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20091126/681c0a3e/attachment.htm>


More information about the ParaView mailing list