EnSight Reader: Crash when running pvbatch script with more than 12 processes
Using a Python script calling the EnSightReader with pvbatch (PV 5.6) using either intelmpi or openmpi, the case always seems to fail when run on more than 12 processes. The print stack points to :
[zephyr:12500] Signal: Segmentation fault (11)
[zephyr:12500] Signal code: Address not mapped (1)
[zephyr:12500] Failing at address: 0x4b97d48
[zephyr:12500] [ 0] /lib64/libpthread.so.0(+0x10b20)[0x7f31cebd3b20]
[zephyr:12500] [ 1] ThirdParty/openmpi-3.0.0/ParaView-OSMesa/lib/libvtkPVVTKExtensionsDefault-pv5.6.so.1(_ZN27vtkPEnSightGoldBinaryReader28CreateUnstructuredGridOutputEiPcPKcP20vtkMultiBlockDataSet+0x30a4)[0x7f31c4702c24]
[zephyr:12500] [ 2] ThirdParty/openmpi-3.0.0/ParaView-OSMesa/lib/libvtkPVVTKExtensionsDefault-pv5.6.so.1(_ZN27vtkPEnSightGoldBinaryReader16ReadGeometryFileEPKciP20vtkMultiBlockDataSet+0x81b)[0x7f31c46fd96b]
[zephyr:12500] [ 3] ThirdParty/openmpi-3.0.0/ParaView-OSMesa/lib/libvtkPVVTKExtensionsDefault-pv5.6.so.1(_ZN17vtkPEnSightReader11RequestDataEP14vtkInformationPP20vtkInformationVectorS3_+0x246)[0x7f31c471af46]
[zephyr:12500] [ 4] ThirdParty/openmpi-3.0.0/ParaView-OSMesa/lib/libvtkCommonExecutionModel-pv5.6.so.1(_ZN12vtkExecutive13CallAlgorithmEP14vtkInformationiPP20vtkInformationVectorS3_+0x40)[0x7f31cfbafe10]
[zephyr:12500] [ 5] ThirdParty/openmpi-3.0.0/ParaView-OSMesa/lib/libvtkCommonExecutionModel-pv5.6.so.1(_ZN23vtkDemandDrivenPipeline11ExecuteDataEP14vtkInformationPP20vtkInformationVectorS3_+0x37)[0x7f31cfba9977]
[zephyr:12500] [ 6] ThirdParty/openmpi-3.0.0/ParaView-OSMesa/lib/libvtkCommonExecutionModel-pv5.6.so.1(_ZN24vtkCompositeDataPipeline11ExecuteDataEP14vtkInformationPP20vtkInformationVectorS3_+0x141)[0x7f31cfba6961]
The command used to reproduce this is:
mpirun -np 16 pvbatch testensight.py
where testensight.py is a simplified script containing :
from paraview.simple import *
import os
filename = os.path.join(os.getcwd(),'EnSight','COLD_Stadium.case')
print filename
source = EnSightReader(CaseFileName=filename)
source.UpdatePipeline()
print 'Finished updating source'
slice1 = Slice(SliceType="Plane")
slice1.SliceType.Origin = [0,0,349.94806975498796]
slice1.UpdatePipeline()
For 12 or less processes it runs through fine. I can reproduce the error in PV 5.6.1 and PV 5.7.1 RCs.
I see that there might be a connected issue #14996 but I don't see a solution in there. Is this then a known issue? Do you have any suggested fix / patch I could try?
This is an important issue for us as it blocks our workflows. I can share the case if required but I suspect you can reproduce this in any other case as well.
Please let me know if you can take a look at this issue and how long it will take to fix. Thanks in advance.
Kind regards, Punit