[Paraview] PV 3.12.0 coprocessing problem
Biddiscombe, John A.
biddisco at cscs.ch
Wed Dec 21 12:15:28 EST 2011
I'm getting lock ups when saving images using the coprocessing. It looks a lot like a bug that was fixed many moons ago, but maybe the fix got lost in a merge ...
1 process makes it to here and waits for MPI traffic
> vtkParallel.dll!vtkMPICommunicatorReduceData(const void * sendBuffer=0x000000000012c318, void * recvBuffer=0x000000000012c378, __int64 length=3, int type=11, int operation=1476395010, int destProcessId=0, int * comm=0x0000000005d77670) Line 317 C++
vtkParallel.dll!vtkMPICommunicator::ReduceVoidArray(const void * sendBuffer=0x000000000012c318, void * recvBuffer=0x000000000012c378, __int64 length=3, int type=11, int operation=1, int destProcessId=0) Line 1422 + 0x4c bytes C++
vtkParallel.dll!vtkCommunicator::Reduce(const double * sendBuffer=0x000000000012c318, double * recvBuffer=0x000000000012c378, __int64 length=3, int operation=1, int destProcessId=0) Line 633 C++
vtkParallel.dll!vtkMultiProcessController::Reduce(const double * sendBuffer=0x000000000012c318, double * recvBuffer=0x000000000012c378, __int64 length=3, int operation=1, int destProcessId=0) Line 811 C++
vtkPVClientServerCore.dll!vtkPVSynchronizedRenderWindows::SynchronizeBounds(double * bounds=0x000000000d18a8a8) Line 1381 C++
vtkPVClientServerCore.dll!vtkPVRenderView::GatherBoundsInformation(bool using_distributed_rendering=true) Line 598 C++
vtkPVClientServerCore.dll!vtkPVRenderView::Render(bool interactive=false, bool skip_rendering=false) Line 882 C++
vtkPVClientServerCore.dll!vtkPVRenderView::StillRender() Line 745 C++
vtkPVClientServerCoreCS.dll!vtkPVRenderViewCommand(vtkClientServerInterpreter * arlu=0x0000000005d6be10, vtkObjectBase * ob=0x000000000d18a770, const char * method=0x000000000e1f7ee9, const vtkClientServerStream & msg={...}, vtkClientServerStream & resultStream={...}) Line 258 C++
vtkClientServer.dll!vtkClientServerInterpreter::ProcessCommandInvoke(const vtkClientServerStream & css={...}, int midx=0) Line 379 + 0x2f bytes C++
vtkClientServer.dll!vtkClientServerInterpreter::ProcessOneMessage(const vtkClientServerStream & css={...}, int message=0) Line 214 + 0x1d bytes C++
vtkClientServer.dll!vtkClientServerInterpreter::ProcessStream(const vtkClientServerStream & css={...}) Line 183 + 0x14 bytes C++
vtkPVServerImplementation.dll!vtkPVSessionCore::ExecuteStreamInternal(const vtkClientServerStream & stream={...}, bool ignore_errors=false) Line 636 C++
vtkPVServerImplementation.dll!vtkPVSessionCore::ExecuteStream(unsigned int location=21, const vtkClientServerStream & stream={...}, bool ignore_errors=false) Line 606 C++
vtkPVServerImplementation.dll!vtkPVSessionBase::ExecuteStream(unsigned int location=21, const vtkClientServerStream & stream={...}, bool ignore_errors=false) Line 157 C++
vtkPVServerManager.dll!vtkSMProxy::ExecuteStream(const vtkClientServerStream & stream={...}, bool ignore_errors=false, unsigned int location=21) Line 2092 C++
vtkPVServerManager.dll!vtkSMViewProxy::StillRender() Line 137 + 0x18 bytes C++
vtkPVServerManager.dll!`anonymous namespace'::vtkRenderHelper::EventuallyRender() Line 86 C++
vtkPVVTKExtensions.dll!vtkPVGenericRenderWindowInteractor::Render() Line 302 C++
vtkRendering.dll!vtkRenderWindowInteractor::Initialize() Line 632 C++
vtkRendering.dll!vtkRenderWindowInteractor::ReInitialize() Line 76 + 0x13 bytes C++
vtkRendering.dll!vtkWin32OpenGLRenderWindow::SetOffScreenRendering(int offscreen=0) Line 1268 C++
vtkPVServerManager.dll!vtkSMRenderViewProxy::CaptureWindowInternal(int magnification=1) Line 875 C++
vtkPVServerManager.dll!vtkSMViewProxy::CaptureWindow(int magnification=1) Line 268 + 0x20 bytes C++
vtkPVServerManager.dll!vtkSMViewProxy::WriteImage(const char * filename=0x000000000b619f50, const char * writerName=0x000000000ac750e0, int magnification=1) Line 307 + 0x11 bytes C++
vtkPVServerManagerPythonD.dll!PyvtkSMViewProxy_WriteImage(_object * self=0x000000000b62f6d8, _object * args=0x000000000b62b438) Line 367 + 0x1f bytes C++
------------------------------
but the other N-1 processes end up in here - waiting
> vtkParallel.dll!vtkMPICommunicator::BroadcastVoidArray(void * data=0x000000000012dd24, __int64 length=1, int type=6, int root=0) Line 1159 + 0x31 bytes C++
vtkParallel.dll!vtkCommunicator::Broadcast(int * data=0x000000000012dd24, __int64 length=1, int srcProcessId=0) Line 256 C++
vtkParallel.dll!vtkMultiProcessController::Broadcast(int * data=0x000000000012dd24, __int64 length=1, int srcProcessId=0) Line 402 C++
vtkPVServerManager.dll!vtkSMUtilities::SaveImageOnProcessZero(vtkImageData * image=0x000000000e2c79c0, const char * filename=0x000000000b729f50, const char * writerName=0x000000000ac850e0) Line 139 C++
vtkPVServerManager.dll!vtkSMViewProxy::WriteImage(const char * filename=0x000000000b729f50, const char * writerName=0x000000000ac850e0, int magnification=1) Line 311 + 0x1f bytes C++
vtkPVServerManagerPythonD.dll!PyvtkSMViewProxy_WriteImage(_object * self=0x000000000b73f6d8, _object * args=0x000000000b73b438) Line 367 + 0x1f bytes C++
There was a problem with the SaveImageOnProcess Zero which caused exactly this some time ago. I'm using a branch of mine derived from the v3.12.0 tag, but I cherry picked Andy's patch from kitware/master or wherever that was mentioned a few days ago -are there othe fixes on master/next that I might beneeding?
Any ideas. The pipeline is a contour of some image data on N processes. Pretty Simple.
Any help appreciated.
thanks
JB
More information about the ParaView
mailing list