HPCCloud icon indicating copy to clipboard operation
HPCCloud copied to clipboard

Convert ParaView taskflow to use pvserver and MPI

Open chetnieter opened this issue 8 years ago • 6 comments

Moving kitware/cumulus#270 to HPCCloud.

chetnieter avatar Aug 25 '16 18:08 chetnieter

@jourdain @cjh1 So I applied Utkarsh's patch to ParaView and installed the patched version on ulmus. I made some simple changes the pvw.sh script to use mpi and pvbatch instead of pvpython. Those changes can be viewed at #503. When I try and run a visualization with these changes I get the following errors from pvw_visualizer.py. I am bit out of my depth trying to figure out what is going on.

2016-08-25 13:08:56-0400 [-] Log opened. 2016-08-25 13:08:57-0400 [-] Traceback (most recent call last): 2016-08-25 13:08:57-0400 [-] File "pvw-visualizer.py", line 210, in 2016-08-25 13:08:57-0400 [-] server.start_webserver(options=args, protocol=_VisualizerServer) 2016-08-25 13:08:57-0400 [-] File "/opt/paraview-batch/lib/paraview-5.1/site-packages/vtk/web/server.py", line 183, in start_webserver 2016-08-25 13:08:57-0400 [-] appSession = protocol(types.ComponentConfig(realm = "vtkweb")) 2016-08-25 13:08:57-0400 [-] File "/opt/paraview-batch/lib/paraview-5.1/site-packages/paraview/web/wamp.py", line 13, in init 2016-08-25 13:08:57-0400 [-] wamp.ServerProtocol.init(self, config) 2016-08-25 13:08:57-0400 [-] File "/opt/paraview-batch/lib/paraview-5.1/site-packages/vtk/web/wamp.py", line 62, in init 2016-08-25 13:08:57-0400 [-] self.initialize() 2016-08-25 13:08:57-0400 [-] File "pvw-visualizer.py", line 171, in initialize 2016-08-25 13:08:57-0400 [-] self.registerVtkWebProtocol(pv_protocols.ParaViewWebProxyManager(allowedProxiesFile=_VisualizerServer.proxies, baseDir=_VisualizerServer.dataDir, fileToLoad=_VisualizerServer.fileToLoad, allowUnconfiguredReaders=_VisualizerServer.allReaders)) 2016-08-25 13:08:57-0400 [-] File "/opt/paraview-batch/lib/paraview-5.1/site-packages/paraview/web/protocols.py", line 1140, in init 2016-08-25 13:08:57-0400 [-] self.open(fileToLoad) 2016-08-25 13:08:57-0400 [-] File "/opt/paraview-batch/lib/paraview-5.1/site-packages/paraview/web/protocols.py", line 1825, in open 2016-08-25 13:08:57-0400 [-] self.getApplication().InvokeEvent('PushRender') 2016-08-25 13:08:57-0400 [-] AttributeError: 'NoneType' object has no attribute 'InvokeEvent'

chetnieter avatar Aug 25 '16 18:08 chetnieter

Ok I guess we need to guard some stuff when running pvbatch with mpi.

in the python code we should not call any self.getApplication().xyz if we are not process 0

(servermanager.vtkProcessModule.GetProcessModule().GetPartitionId() == 0)

@chetnieter, you can take a stab at it by changing some code inside

/opt/paraview-batch/lib/paraview-5.1/site-packages/paraview/web/protocols.py

jourdain avatar Aug 25 '16 18:08 jourdain

I still get the same error even with the guard. Apparently getApplication() is returning None even on process 0.

    if (servermanager.vtkProcessModule.GetProcessModule().GetPartitionId() == 0):
        self.getApplication().InvokeEvent('PushRender')

chetnieter avatar Aug 25 '16 19:08 chetnieter

Hum that should not be the case.

Did you try to run visualizer without mpi but with pvbatch instead of pvpython? Does that work? Just trying to make sure to know what works and doesn't.

jourdain avatar Aug 25 '16 20:08 jourdain

So it turns out that the error is not due to pvbatch or Utkarsh's patch. I tried to run the paraview taskflow with an unpatched version of paraview I get the same error when it is running the visualizer without mpi with pvpython. So I checked versions and the currently installed version on ulmus is 5.0.0-222-g07d8158 and version that I installed is 5.1.2-299-gfa95b57. I will try building the 5.0 release with the patch but we should probably understand why it isn't working with the later version of paraview.

chetnieter avatar Aug 28 '16 01:08 chetnieter

I'm running ParaView/master with pvpython without any issue. You should try to run ParaViewWeb on your machine and then figure out what is going on with Ulmus and pvw.

On Aug 27, 2016, at 19:03, Chet Nieter [email protected] wrote:

So it turns out that the error is not due to pvbatch or Utkarsh's patch. I tried to run the paraview taskflow with an unpatched version of paraview I get the same error when it is running the visualizer without mpi with pvpython. So I checked versions and the currently installed version on ulmus is 5.0.0-222-g07d8158 and version that I installed is 5.1.2-299-gfa95b57. I will try building the 5.0 release with the patch but we should probably understand why it isn't working with the later version of paraview.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

jourdain avatar Aug 28 '16 01:08 jourdain