<br><br><div><span class="gmail_quote">On 22 Jun 2007 13:55:07 -0000, <b class="gmail_sendername">Raashid Baig</b> <<a href="mailto:raashid.b@rediffmail.com">raashid.b@rediffmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<p>
I have some very fundamentel doubts regarding paraview and its working<br>
in parallel.<br>
<br>
1. Is it necessary to compile Paraview 3.0.1 from sources in parallel<br>
to use paraview in parallel, if the binaries are available on n<br>
different machines will it do the same job ?</p></blockquote><div><br>Yes. <br>ParaView's server executables require MPI to run in parallel and there are many different implementations of MPI. For this reason the binaries are compiled without MPI support. So to run paraview with a parallel server you must compile paraview from source and enable MPI.
<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><p>
2. I am able to launch pvserver (from the binaries not the compiled<br>
sources) on 3 different computers using LAM/MPI, is it necessary that<br>
the computer on which paraview's client will be launched should also<br>
be within these 3 computer, which were booted through mpirun. If no<br>
how should I connect to the 3 different severs from paraview ?<br></p></blockquote><div>No the client can be on a different machine which may have a completely different architecture. The server is conceptually one program with different parts running on different machines. Start it with a command like "mpirun -np NUMMACHINES pvserver". Then establish one connection between the client and the server through the File->Choose Server dialog. Enter in the machine name of the machine that you run the server on, and then optionally give it a command line to start the server automatically instead of from the command line manually.
<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><p>
In the ParaView book it is said that if separate data and render<br>
servers are running on 2 different clusters (Data Server/ Render<br>
Server / Client configuration ) the client should connect to the<br>
master node (or node 0) of both the data server and render server and<br>
they in turn will connect to the other computers of their respective<br>
servers.<br>
<br>
Nothing is said how to connect when paraview is running in<br>
Client/Server Mode. Should we connect to the master node of the server<br>
and the other computers in the server will be controlled by the master<br>
computer all by itself ? Or we have to do thing on over own ? </p></blockquote><div>Yes just connect to the first node of the server (or renderserver and dataserver) by giving the Choose Server dialog their machine names, and the servers will take care of themselved through MPI.
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><p>Through GUI we can connect to only one server at a time. If we are<br>
connected to one server and then connect to a second server the<br>
connection to the first server is automatically closes. </p></blockquote><div><br>This is an artifact of not having your server built with MPI.<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<p>
3. How to connect pvpython to server ? No command line argument seems<br>
to be available with pvpython to connect to a running server. Should<br>
we use paraview's active connection to connect to a particular server,<br>
ex. paraview.ActiveConnection = paraview.Connect("<a href="http://10.101.11.71" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">10.101.11.71</a>", 11111)<br>
through script. </p></blockquote><div><br>Yes. <br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><p>
If I try to connect pvpython to a pvserver through script the script<br>
crashes</p></blockquote><div>I am not sure why this crashes for you. Recently there was a bug in creating displays through pvpython, and we have been doing a great deal of work on the display architecture in general. If the problem continues after you get a parallel build built, send another email to the list and we'll try to help diagnose.
<br><br>cheers,<br>Dave DeMarle<br> </div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><p>
----------------------------------------------------------------<br>
raashid@ogion:~/Desktop/paraview-3.0.1-Linux-x86/bin$ ./pvpython<br>
Python 2.5 (release25-maint, Dec 9 2006, 14:12:17) <br>
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-20)] on linux2<br>
Type "help", "copyright", "credits" or "license" for more information.<br>
>>> import paraview<br>
>>> paraview.ActiveConnection = paraview.Connect("<a href="http://10.101.11.71" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">10.101.11.71</a>", 11111)<br>
>>> sphere = paraview.CreateProxy("sources","SphereSource","sources")<br>
>>> renModule = paraview.CreateRenderWindow()<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkServerConnection.cxx, line 67<br>
vtkServerConnection (0x8260bc0): Server Connection Closed!<br>
<br>
raashid@ged:~/Desktop/paraview-3.0.1-Linux-x86/bin$ ./pvserver<br>
Listen on port: 11111<br>
Waiting for client...<br>
Client connected.<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkProcessModule.cxx, line 971<br>
vtkProcessModule (0x8066b00): Cannot create object of type "vtkIceTRenderManager".<br>
while processing<br>
Message 0 = New<br>
Argument 0 = string_value {vtkIceTRenderManager}<br>
Argument 1 = id_value {8}<br>
<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkProcessModule.cxx, line 973<br>
vtkProcessModule (0x8066b00): Aborting execution for debugging purposes.<br>
<br>
Aborted<br>
----------------------------------------------------------------<br>
<br>
If I run the following script through pvpython the same problem occurs<br>
------------------------------------------------------------------<br>
# test2.py<br>
import paraview<br>
paraview.ActiveConnection = paraview.Connect("<a href="http://10.101.11.71" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">10.101.11.71</a>", 11111)<br>
# create a sphere and register it under sources.<br>
sphere = paraview.CreateProxy("sources","SphereSource","sources")<br>
# create a render module.<br>
renModule = paraview.CreateRenderWindow()<br>
renModule.UpdateVTKObjects()<br>
# create a display<br>
display = paraview.CreateDisplay(sphere, renModule)<br>
# reset camera<br>
renModule.ResetCamera()<br>
# render.<br>
renModule.InteractiveRender()<br>
raw_input("Enter")<br>
<br>
raashid@ogion:~/Desktop/paraview-3.0.1-Linux-x86/bin$ ./pvpython test2.py<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkServerConnection.cxx, line 67<br>
vtkServerConnection (0x83e8930): Server Connection Closed!<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/ServerManager/vtkSMDataObjectDisplayProxy.cxx, line 272<br>
vtkSMCompositeDisplayProxy (0x846d150): Input proxy has no output! Cannot create the display<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/ServerManager/vtkSMDataObjectDisplayProxy.cxx, line 1355<br>
vtkSMCompositeDisplayProxy (0x846d150): Display proxy not created!<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/ServerManager/vtkSMDataObjectDisplayProxy.cxx, line 1282<br>
vtkSMCompositeDisplayProxy (0x846d150): Objects not created!<br>
<br>
Segmentation fault (core dumped)<br>
<br>
<br>
<br>
On running server the message displayed is :<br>
<br>
raashid@ged:~/Desktop/paraview-3.0.1-Linux-x86/bin$ ./pvserver<br>
Listen on port: 11111<br>
Waiting for client...<br>
Client connected.<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkProcessModule.cxx, line 971<br>
vtkProcessModule (0x8066b00): Cannot create object of type "vtkIceTRenderManager".<br>
while processing<br>
Message 0 = New<br>
Argument 0 = string_value {vtkIceTRenderManager}<br>
Argument 1 = id_value {8}<br>
<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkProcessModule.cxx, line 973<br>
vtkProcessModule (0x8066b00): Aborting execution for debugging purposes.<br>
<br>
Aborted<br>
<br>
<br>
I had similar doubt which I posted on the mailing list and got a reply<br>
from Utkarsh Ayachit. As suggested by Utkarsh Ayachit in paraview<br>
mailing list, Vol 38, Issue 32 a similar script fails in the same<br>
manner. Utkarsh wrote:-<br>
"The Distributed stand-alone mode as described in the ParaView book is<br>
no longer supported by ParaView i.e. to run in parallel, one must run in<br>
client-server mode. This isn't that cumbersome really,<br>
instead of"<br>
mpirun -np 4 paraview<br>
we do<br>
mpirun -np 4 pvserver<br>
paraview (and then connect to the correct server).<br>
<br>
Same is true for pvpython.<br>
<br>
Here's script to read a file and then render in parallel.<br>
<br>
import paraview<br>
# Create default built in connection<br>
paraview.ActiveConnection = paraview.Connect("localhost",11111);<br>
<br>
# Create the reader proxy.<br>
# Note that one must create the correct reader based on the type of the<br>
# file being read.<br>
reader = paraview.CreateProxy("sources", "ExodusReader", "sources")<br>
reader.SetFileName("/tmp/somedataset.ex2")<br>
reader.UpdateVTKObjects()<br>
<br>
# Create render window<br>
renWin = paraview.CreateRenderWindow()<br>
# Till the view to always render on all processess in parallel and then<br>
# composite the image together.<br>
renWin.SetRemoteRenderThreshold(0);<br>
renWin.UpdateVTKObjects();<br>
<br>
# create and add display<br>
display = paraview.CreateDisplay(reader, renWin)<br>
# render<br>
renWin.ResetCamera()<br>
renWin.StillRender()<br>
<br>
I ran mpirun on 3 computers including the computer on which I started the pvpython and tried a similar script as suggested in reply<br>
-----------------------------------------------------------------------<br>
# test5.py<br>
import paraview<br>
<br>
paraview.ActiveConnection = paraview.Connect("localhost", 11111)<br>
<br>
reader = paraview.CreateProxy("sources", "XMLUnstructuredGridReader", "sources")<br>
reader.SetFileName("fire_ug.vtu")<br>
reader.UpdateVTKObjects()<br>
<br>
isosurface_filter = paraview.CreateProxy("filters", "Contour", "filters")<br>
isosurface_filter.SetInput(reader)<br>
isosurface_filter.SetContourValues(298.38, 396.84, 495.31, 593.775, 692)<br>
isosurface_filter.UpdateVTKObjects()<br>
<br>
renWin = paraview.CreateRenderWindow()<br>
renWin.SetRemoteRenderThreshold(0)<br>
renWin.UpdateVTKObjects()<br>
<br>
display1 = paraview.CreateDisplay(isosurface_filter, renWin)<br>
<br>
renWin.ResetCamera()<br>
renWin.StillRender()<br>
raw_input("Enter") <br>
<br>
------------------------------------------------------------------------<br>
<br>
Again this resulted in a crash<br>
<br>
<br>
raashid@ogion:~/Desktop/paraview-3.0.1-Linux-x86/bin$ ./pvpython test5.py<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkServerConnection.cxx, line 67<br>
vtkServerConnection (0x83e8240): Server Connection Closed!<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/Common/vtkServerConnection.cxx, line 338<br>
vtkServerConnection (0x83e8240): Server could failed to gather information.<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/ServerManager/vtkSMDataObjectDisplayProxy.cxx, line 272<br>
vtkSMCompositeDisplayProxy (0x8470430): Input proxy has no output! Cannot create the display<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/ServerManager/vtkSMDataObjectDisplayProxy.cxx, line 1355<br>
vtkSMCompositeDisplayProxy (0x8470430): Display proxy not created!<br>
<br>
ERROR: In /home/berk/Work/ReleaseBuilds/ParaView3/Servers/ServerManager/vtkSMDataObjectDisplayProxy.cxx, line 1282<br>
vtkSMCompositeDisplayProxy (0x8470430): Objects not created!<br>
<br>
Segmentation fault (core dumped)<br>
<br>
<br>
4. Who does D3 filter work in ParaView3, is its working same as it was<br>
in the previous version 2.X<br>
<br>
I may be missing something very fundamental, can someone please help<br>
me with this.<br>
<br>
<br>
</p>
<br><br>
<table style="font-family: Verdana; font-size: 11px; line-height: 15px;" border="0" cellpadding="0" cellspacing="0" height="57" width="644"><tbody><tr><td><a href="http://adworks.rediff.com/cgi-bin/AdWorks/click.cgi/www.rediff.com/signature-home.htm/1050715198@Middle5/1275197_1268894/1274543/1?PARTNER=3&OAS_QUERY=null+target=new+" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
<img alt="1" border="0"></a></td></tr></tbody></table><br>_______________________________________________<br>ParaView mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:ParaView@paraview.org">
ParaView@paraview.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br><br>
</blockquote></div><br>