[Paraview] Why is PKdTree used for IMAGE Volume Rendering?

Utkarsh Ayachit utkarsh.ayachit at kitware.com
Thu Feb 12 15:34:37 EST 2009


Ah and there's the bad news.
In case of image data for the "if" condition at vtkPKdTree.cxx:435,
I'd expect the condition to succeed and go to
this->ProcessUserDefinedCuts(..) however, it seems like that condition
is failing and it's going to this->MultiProcessBuildLocator(..) which
is used for unstructured datasets.

Are you able to reproduce the behavior with a simpler dataset (say
wavelet) or something that;s already in ParaViewData, or some dataset
that I can try it with? Also give me all the steps to reproduce the
problem (since I am not able to reproduce it with 5 procs using
Wavelet source).

Utkarsh


On Thu, Feb 12, 2009 at 3:24 PM, Kevin H. Hobbs <hobbsk at ohiou.edu> wrote:
> On Thu, 2009-02-12 at 14:56 -0500, Utkarsh Ayachit wrote:
>> Kevin,
>>
>> The KdTree is still built (using the partitions from the structured
>> dataset set itself -- hence isn't a very compute intensive task) just
>> in case it's needed to partition any unstructured data, hence you're
>> seeing the PKdTree progress. But I don't think that's where it is
>> hanging. Is the progress bar saying PKtree:100 ?
>
> No, it only made it to 58
>
>>  It may actually have
>> frozen in the volume rendering code. Is it possible to attach a
>> debugger to any of the server processes and see where it's stuck
>> (provide the stack trace if possible)?
>
> Paraview stops completely as soon as I attach but here is the first bt
> before it really hung up:
>
> (gdb) bt
> #0  vtkDataArrayTemplate<double>::DataChanged (this=0x2e89fa0)
>    at /home/kevin/kitware/ParaView3/VTK/Common/vtkDataArrayTemplate.txx:1202
> #1  0x00007f035a9cc221 in vtkPoints::SetPoint () at /home/kevin/kitware/ParaView3/VTK/Common/vtkPoints.h:126
> #2  vtkImageData::GetCell (this=0x2e897d0, cellId=48799904)
>    at /home/kevin/kitware/ParaView3/VTK/Filtering/vtkImageData.cxx:392
> #3  0x00007f035aa00bed in vtkKdTree::ComputeCellCenters (this=0x28853d0, set=0x0)
>    at /home/kevin/kitware/ParaView3/VTK/Filtering/vtkKdTree.cxx:677
> #4  0x00007f035eee71eb in vtkPKdTree::MultiProcessBuildLocator (this=0x28853d0, volBounds=0x2e91140)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:498
> #5  0x00007f035eee7683 in vtkPKdTree::BuildLocator (this=0x28853d0)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:441
> #6  0x0000000000769725 in vtkKdTreeManager::Update (this=0x2877c50)
>    at /home/kevin/kitware/ParaView3/Servers/Filters/vtkKdTreeManager.cxx:143
> #7  0x00000000078fc403 in vtkKdTreeManagerCommand (arlu=0x24cfac0, ob=0x2877c50, method=<value optimized out>,
>    msg=@0x7fff6aeabc10, resultStream=@0x24ceb40)
>    at /home/kevin/kitware/ParaView3_Build/Servers/Filters/vtkKdTreeManagerClientServer.cxx:123
> #8  0x00007f035f40e36f in vtkClientServerInterpreter::ProcessCommandInvoke (this=0x24cfac0, css=@0x7fff6aeac080,
>    midx=0) at /home/kevin/kitware/ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:384
> #9  0x00007f035f41058e in vtkClientServerInterpreter::ProcessOneMessage (this=0x24cfac0, css=@0x7fff6aeac080,
>    message=0) at /home/kevin/kitware/ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:214
> #10 0x00007f035f4107fd in vtkClientServerInterpreter::ProcessStream (this=0x24cfac0, css=@0x7fff6aeac080)
>    at /home/kevin/kitware/ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:183
> #11 0x00000000001ae220 in vtkSelfConnection::ProcessStreamLocally (this=<value optimized out>,
>    stream=@0x7fff6aeac080) at /home/kevin/kitware/ParaView3/Servers/Common/vtkSelfConnection.cxx:120
> #12 0x000000000015e7ca in vtkMPISelfConnection::SendStreamToServerNodeInternal (this=0x2985a40, remoteId=-1,
>    stream=@0x7fff6aeac080) at /home/kevin/kitware/ParaView3/Servers/Common/vtkMPISelfConnection.cxx:246
> #13 0x000000000015dc25 in vtkMPISelfConnection::SendStreamToDataServer (this=0x2e89fa0,
>    stream=<value optimized out>) at /home/kevin/kitware/ParaView3/Servers/Common/vtkMPISelfConnection.cxx:215
> ---Type <return> to continue, or q <return> to quit---
> #14 0x000000000015fb87 in vtkProcessModuleConnection::SendStream (this=0x2985a40, servers=<value optimized out>,
>    stream=@0x7fff6aeac080) at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModuleConnection.cxx:225
> #15 0x00000000001629a9 in vtkProcessModuleConnectionManager::SendStream (this=<value optimized out>,
>    connectionID=<value optimized out>, serverFlags=1, stream=@0x7fff6aeac080, reset=1)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModuleConnectionManager.cxx:536
> #16 0x000000000016a3ca in vtkProcessModule::SendStream (this=0x24d14c0, connectionID=1, server=1,
>    stream=@0x7fff6aeac080, resetStream=1) at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModule.cxx:870
> #17 0x000000000015ae85 in vtkClientConnectionRMI (remoteArg=0x2f1c3c0, remoteArgLength=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkClientConnection.cxx:57
> #18 0x00007f035eebef2d in vtkMultiProcessController::ProcessRMI (this=0x28ed570,
>    remoteProcessId=<value optimized out>, arg=0xfffffffffffffffe, argLength=0, rmiTag=938531)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkMultiProcessController.cxx:551
> #19 0x00007f035eebf90b in vtkMultiProcessController::ProcessRMIs (this=0x28ed570, reportErrors=0, dont_loop=1)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkMultiProcessController.cxx:504
> #20 0x00000000001aa236 in vtkRemoteConnection::ProcessCommunication (this=0x2876ba0)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkRemoteConnection.cxx:75
> #21 0x0000000000163f25 in vtkProcessModuleConnectionManager::MonitorConnections (this=0x29a4a90,
>    msec=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModuleConnectionManager.cxx:430
> #22 0x0000000000169bee in vtkProcessModule::StartServer (this=0x24d14c0, msec=0)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModule.cxx:438
> #23 0x000000000016b8ed in vtkProcessModule::Start (this=0x24d14c0, argc=1, argv=0x24ce8a0)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModule.cxx:349
> #24 0x00000000007cd159 in vtkPVMain::Run (this=0x24d07a0, options=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/Servers/Filters/vtkPVMain.cxx:261
> #25 0x000000000040138d in main (argc=2, argv=0x7fff6aeac6f8)
>    at /home/kevin/kitware/ParaView3/Servers/Executables/pvserver.cxx:45
>
> I detached and reattached once the system had started swapping and got a
> second bt
>
> (gdb) bt
> #0  0x00000036200845cf in memcpy () from /lib64/libc.so.6
> #1  0x00007f035eee3411 in vtkPKdTree::PartitionSubArray (this=0x28853d0, L=<value optimized out>,
>    R=<value optimized out>, K=111325902, dim=0, p1=0, p2=1)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:1336
> #2  0x00007f035eee3692 in vtkPKdTree::_select (this=0x28853d0, L=111235003, R=111418679, K=111325902, dim=0)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:961
> #3  0x00007f035eee37b7 in vtkPKdTree::_select (this=0x28853d0, L=0, R=222651803, K=111325902, dim=0)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:940
> #4  0x00007f035eee384e in vtkPKdTree::Select (this=0x7f02ae746f90, dim=0, L=0, R=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:984
> #5  0x00007f035eee5149 in vtkPKdTree::DivideRegion (this=0x28853d0, kd=0x2f1edf0, L=0, level=<value optimized out>,
>    tag=1) at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:777
> #6  0x00007f035eee68dd in vtkPKdTree::BreadthFirstDivide (this=0x28853d0, volBounds=0x2e91140)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:651
> #7  0x00007f035eee72f0 in vtkPKdTree::MultiProcessBuildLocator (this=0x28853d0, volBounds=0x2e91140)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:536
> #8  0x00007f035eee7683 in vtkPKdTree::BuildLocator (this=0x28853d0)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkPKdTree.cxx:441
> #9  0x0000000000769725 in vtkKdTreeManager::Update (this=0x2877c50)
>    at /home/kevin/kitware/ParaView3/Servers/Filters/vtkKdTreeManager.cxx:143
> #10 0x00000000078fc403 in vtkKdTreeManagerCommand (arlu=0x24cfac0, ob=0x2877c50, method=<value optimized out>,
>    msg=@0x7fff6aeabc10, resultStream=@0x24ceb40)
>    at /home/kevin/kitware/ParaView3_Build/Servers/Filters/vtkKdTreeManagerClientServer.cxx:123
> #11 0x00007f035f40e36f in vtkClientServerInterpreter::ProcessCommandInvoke (this=0x24cfac0, css=@0x7fff6aeac080,
>    midx=0) at /home/kevin/kitware/ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:384
> #12 0x00007f035f41058e in vtkClientServerInterpreter::ProcessOneMessage (this=0x24cfac0, css=@0x7fff6aeac080,
>    message=0) at /home/kevin/kitware/ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:214
> #13 0x00007f035f4107fd in vtkClientServerInterpreter::ProcessStream (this=0x24cfac0, css=@0x7fff6aeac080)
> ---Type <return> to continue, or q <return> to quit---
>    at /home/kevin/kitware/ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:183
> #14 0x00000000001ae220 in vtkSelfConnection::ProcessStreamLocally (this=<value optimized out>,
>    stream=@0x7fff6aeac080) at /home/kevin/kitware/ParaView3/Servers/Common/vtkSelfConnection.cxx:120
> #15 0x000000000015e7ca in vtkMPISelfConnection::SendStreamToServerNodeInternal (this=0x2985a40, remoteId=-1,
>    stream=@0x7fff6aeac080) at /home/kevin/kitware/ParaView3/Servers/Common/vtkMPISelfConnection.cxx:246
> #16 0x000000000015dc25 in vtkMPISelfConnection::SendStreamToDataServer (this=0x7f02ae746f90,
>    stream=<value optimized out>) at /home/kevin/kitware/ParaView3/Servers/Common/vtkMPISelfConnection.cxx:215
> #17 0x000000000015fb87 in vtkProcessModuleConnection::SendStream (this=0x2985a40, servers=<value optimized out>,
>    stream=@0x7fff6aeac080) at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModuleConnection.cxx:225
> #18 0x00000000001629a9 in vtkProcessModuleConnectionManager::SendStream (this=<value optimized out>,
>    connectionID=<value optimized out>, serverFlags=1, stream=@0x7fff6aeac080, reset=1)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModuleConnectionManager.cxx:536
> #19 0x000000000016a3ca in vtkProcessModule::SendStream (this=0x24d14c0, connectionID=1, server=1,
>    stream=@0x7fff6aeac080, resetStream=1) at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModule.cxx:870
> #20 0x000000000015ae85 in vtkClientConnectionRMI (remoteArg=0x2f1c3c0, remoteArgLength=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkClientConnection.cxx:57
> #21 0x00007f035eebef2d in vtkMultiProcessController::ProcessRMI (this=0x28ed570,
>    remoteProcessId=<value optimized out>, arg=0x40e54afb41da325a, argLength=1088768763, rmiTag=938531)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkMultiProcessController.cxx:551
> #22 0x00007f035eebf90b in vtkMultiProcessController::ProcessRMIs (this=0x28ed570, reportErrors=0, dont_loop=1)
>    at /home/kevin/kitware/ParaView3/VTK/Parallel/vtkMultiProcessController.cxx:504
> #23 0x00000000001aa236 in vtkRemoteConnection::ProcessCommunication (this=0x2876ba0)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkRemoteConnection.cxx:75
> #24 0x0000000000163f25 in vtkProcessModuleConnectionManager::MonitorConnections (this=0x29a4a90,
>    msec=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModuleConnectionManager.cxx:430
> #25 0x0000000000169bee in vtkProcessModule::StartServer (this=0x24d14c0, msec=0)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModule.cxx:438
> ---Type <return> to continue, or q <return> to quit---
> #26 0x000000000016b8ed in vtkProcessModule::Start (this=0x24d14c0, argc=1, argv=0x24ce8a0)
>    at /home/kevin/kitware/ParaView3/Servers/Common/vtkProcessModule.cxx:349
> #27 0x00000000007cd159 in vtkPVMain::Run (this=0x24d07a0, options=<value optimized out>)
>    at /home/kevin/kitware/ParaView3/Servers/Filters/vtkPVMain.cxx:261
> #28 0x000000000040138d in main (argc=2, argv=0x7fff6aeac6f8)
>    at /home/kevin/kitware/ParaView3/Servers/Executables/pvserver.cxx:45
>
>
>


More information about the ParaView mailing list