Re: Off Screen Rendering
Moreland, Kenneth <kmorel <at> sandia.gov>
2009-12-01 13:33:53 GMT
In tiled display mode all parallel image compositing goes to the tiled display. The rendering that happens
on the client is local. Yes, that means that the geometry must be sent to the client. Generally, the
decimated geometry of the interactive LOD is all that is sent (unless the data is really small). So in a
sense, the you see only interactive renders on the client. You have to look at the tiled display to see the
full detail (which is the point of having the tiled display in the first place, right?). If even the
decimated geometry is too big (which can happen if the rendering server has lots of processes), then the
client will just show a bounding box in proxy of the actual geometry.
-Ken
________________________________________
From: Paul Melis [Paul.Melis <at> sara.nl]
Sent: Tuesday, December 01, 2009 4:51 AM
To: Moreland, Kenneth; chew ping; weaponfire2005 <at> 163.com
Cc: paraview
Subject: RE: [Paraview] Off Screen Rendering
Hi Ken,
How does Paraview's tiled panel display support fit into this? Am I right in assuming that in that case
(without offscreen-rendering) the pvservers send image output to the client, where a composited image
is displayed? Or is the client also doing local rendering of geometry sent to it from the servers?
Regards,
Paul
________________________________________
From: paraview-bounces <at> paraview.org [paraview-bounces <at> paraview.org] On Behalf Of Moreland,
Kenneth [kmorel <at> sandia.gov]
Sent: Monday, November 30, 2009 7:20 PM
To: chew ping; weaponfire2005 <at> 163.com
Cc: paraview
Subject: Re: [Paraview] Off Screen Rendering
That is correct with two clarifications:
The “with ―use-offscreen-rendering” explanation is only correct for when ParaView is compiled
with OSMesa.
The “without ―use-offscreen-rendering” behavior only happens because the servers try to open X
windows and fail.
-Ken
On 11/25/09 11:50 PM, "chew ping" <lcp81um <at> msn.com> wrote:
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.00016 8 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.0 00175 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 'Datas erver
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国韵网游《天下贰》 <http://allyes.nie.163.com/main/adfclick?db=afanie&bid=1260,614,23&cid=148,4,1&sid=1357&show=ignore&url=http://tx2.163.com/fab.html>
**** Kenneth Moreland
*** Sandia National Laboratories
***********
*** *** *** email: kmorel <at> sandia.gov
** *** ** phone: (505) 844-8919
*** web: http://www.cs.unm.edu/~kmorel
_______________________________________________
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