[Paraview] Parallel Streamtracer

Stephan Rogge stephan.rogge at tu-cottbus.de
Thu May 31 15:31:12 EDT 2012


Hi, Andy and Leo,

thanks for your replies.

Is it possible to get this new implementation? I would to give it a try.

Regards,
Stephan

Am 31.05.2012 um 17:48 schrieb Yuanxin Liu <leo.liu at kitware.com>:

> Hi, Stephan,
>    The previous implementation only has serial performance:  It traces the streamlines one at a time and never starts a new streamline until the previous one finishes.  With communication overhead, it is not surprising it got slower.
> 
>   My new implementation is able to let the processes working on different streamlines simultaneously and should scale much better.
> 
> Leo
> 
> 
> On Thu, May 31, 2012 at 11:27 AM, Andy Bauer <andy.bauer at kitware.com> wrote:
> Hi Stephan,
> 
> The parallel stream tracer uses the partitioning of the grid to determine which process does the integration. When the streamline exits the subdomain of a process there is a search to see if it enters a subdomain assigned to any other processes before figuring it whether it has left the entire domain. 
> 
> Leo, copied here, has been improving the streamline implementation inside of VTK so you may want to get his newer version. It is a pretty tough algorithm to parallelize efficiently without making any assumptions on the flow or partitioning.
> 
> Andy
> 
> 
> On Thu, May 31, 2012 at 4:16 AM, Stephan Rogge <Stephan.Rogge at tu-cottbus.de> wrote:
> Hello,
> 
> I have a question related to the parallelism of the stream tracer: As I
> understand the code right, each line integration (trace) is processed in an
> own MPI process. Right?
> 
> To test the scalability of the Stream tracer I've load a structured
> (curvilinear) grid and applied the filter with a Seed resolution of 1500 and
> check the timings in a single and multi-thread (Multi Core enabled in PV
> GUI) situation.
> 
> I was really surprised that multi core slows done the execution time to 4
> seconds. The single core takes only 1.2 seconds. Data migration cannot be
> the explanation for that behavior (0.5 seconds). What is the problem here?
> 
> Please see attached some statistics...
> 
> Data:
> * Structured (Curvilinear) Grid
> * 244030 Cells
> * 37 MB Memory
> 
> System:
> * Intel i7-2600K (4 Cores + HT = 8 Threads)
> * 16 GB Ram
> * Windows 7 64 Bit
> * ParaView (master-branch, 64 bit compilation)
> 
> #################################
> Single Thread (Seed resolution 1500):
> #################################
> 
> Local Process
> Still Render,  0.014 seconds
> RenderView::Update,  1.222 seconds
>    vtkPVView::Update,  1.222 seconds
>        Execute vtkStreamTracer id: 2184,  1.214 seconds
> Still Render,  0.015 seconds
> 
> #################################
> Eight Threads (Seed resolution 1500):
> #################################
> 
> Local Process
> Still Render,  0.029 seconds
> RenderView::Update,  4.134 seconds
> vtkSMDataDeliveryManager: Deliver Geome,  0.619 seconds
>    FullRes Data Migration,  0.619 seconds
> Still Render,  0.042 seconds
>    OpenGL Dev Render,  0.01 seconds
> 
> 
> Render Server, Process 0
> RenderView::Update,  4.134 seconds
>    vtkPVView::Update,  4.132 seconds
>        Execute vtkStreamTracer id: 2193,  3.941 seconds
> FullRes Data Migration,  0.567 seconds
>    Dataserver gathering to 0,  0.318 seconds
>    Dataserver sending to client,  0.243 seconds
> 
> Render Server, Process 1
> Execute vtkStreamTracer id: 2193,  3.939 seconds
> 
> Render Server, Process 2
> Execute vtkStreamTracer id: 2193,  3.938 seconds
> 
> Render Server, Process 3
> Execute vtkStreamTracer id: 2193,  4.12 seconds
> 
> Render Server, Process 4
> Execute vtkStreamTracer id: 2193,  3.938 seconds
> 
> Render Server, Process 5
> Execute vtkStreamTracer id: 2193,  3.939 seconds
> 
> Render Server, Process 6
> Execute vtkStreamTracer id: 2193,  3.938 seconds
> 
> Render Server, Process 7
> Execute vtkStreamTracer id: 2193,  3.939 seconds
> 
> Cheers,
> Stephan
> 
> 
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
> 
> Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView
> 
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20120531/d3e7014d/attachment.htm>


More information about the ParaView mailing list