[vtkusers] Existing data parallel example in contrib director
Charles Law
charles.law at kitware.com
Fri Aug 4 08:17:43 EDT 2000
At 04:04 PM 8/3/00 +0000, Naveen Kumar Polapally wrote:
>hi,
>
>1)Firstly is there an analogous class to vtkAppendPolydata for Images.
vtkImageAppend, but looking at your next question, it is probably not what
you want. You would have to combine vtkImageAppend with vtkImageClip, and
determine the extent pieces your self.
>2)I want to know What is "Borg " Notation for PolyData.I did not
>understand the part "piece 0 of 4, piece 1 of 4 ".In PolyData we have the
>list consisting of Points with there Ids and CellArray consisting of
>PointIds, so how does it map back into the subset of the original
>structured data.
0 of 2 is the first half of the data (Cells)
1 of 2 is the second half of the data (Cells)
...
The two halves will contain common points.
>3)How does the vtkAppendPolyData get the information about the number of
>processors, so that it can split into that many pieces.I was not a able
>find out where the variable NumberOfInputs gets set. Because the variable
>pieces was being set by using NumberOfInputs.
I assume you are asking about "ParallelStreamingOn". In this mode, the
append filter asks for a different piece from each of its inputs. With
three inputs the requested pieces would be:
input 0: 0 of 3
input 1: 1 of 3
input 2: 2 of 3
The filter knows nothing about the number of processes. It is simply set
up to receive an input from each process.
Charles.
>Thanks,
>naveen.
>
>>From: Jim Ahrens <ahrens at lanl.gov>
>>To: vtkusers at public.kitware.com
>>Subject: [vtkusers] Existing data parallel example in contrib director
>>Date: Tue, 01 Aug 2000 15:44:57 -0600
>>
>>There has been some confusion about data parallelism in vtk. Hopefully
>>the message below helps to clarify this issue.
>>
>>The example program ParallelIso.cxx found in the contrib directory is an
>>
>>example of a data parallel program. Multiple processes each create a
>>pipeline to read, isosurface and color a medical dataset. The resulting
>>polydata from each process is sent over an output port to process 0.
>>These datasets are received (by a set of input ports) on process 0 and
>>appended together using the vtkAppendPolyDataFilter and then rendered.
>>
>>Partitioning of the data into independent subsets starts with the
>>vtkAppendPolyData filter. The call to app->ParallelStreamingOn() in the
>>ParallelIso.cxx program will cause
>>each process to request a subset of the isosurface polydata (i.e. piece
>>0 of 4, piece 1 of 4, etc.). The specific code and line that does this
>>can be found in graphics/vtkAppendPolyData.cxx in the method
>>ComputeInputUpdateExtents():
>>
>>this->Input[idx]->SetUpdateExtext(piece + idx, numPieces);
>>
>>When an update request is propagated up the pipeline (from the renderer,
>>to the append filter, through the elevation filter, to the isosurface
>>filter) the request for a
>>subset of polydata is translated into a request for an independent
>>subset/block
>>of the structured point input dataset. The specific code that does this
>>can be found in patented/vtkSynchronizedTemplates3D.cxx in the
>>method ComputeInputUpdateExtents().
>>
>>The result of the program is a surface (the skin/face of a patient)
>>colored uniquely
>>by the process id that generated it (i.e. the resulting face has a
>>colored
>>checkboard pattern on it).
>>
>>Running this example in parallel with multiple processes should speedup
>>the reading, isosurfacing and coloring filters of the program. (One
>>caveat, too many processes can cause performance problems, for example,
>>too many readers may overwhelm the file system). If you have question on
>>
>>this, please post back to the list and let's continue this thread.
>>
>>--Jim
>>
>>
>>
>>
>>_______________________________________________
>>This is the private VTK discussion list.
>>Please keep messages on-topic. Check the FAQ at:
>><http://public.kitware.com/cgi-bin/vtkfaq>
>>Follow this link to subscribe/unsubscribe:
>>http://public.kitware.com/mailman/listinfo/vtkusers
>
>________________________________________________________________________
>Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
>
>
>_______________________________________________
>This is the private VTK discussion list. Please keep messages on-topic.
>Check the FAQ at: <http://public.kitware.com/cgi-bin/vtkfaq>
>Follow this link to subscribe/unsubscribe:
>http://public.kitware.com/mailman/listinfo/vtkusers
More information about the vtkusers
mailing list