https://public.kitware.com/Wiki/index.php?title=ARB/Topics/MultiThreading&feed=atom&action=historyARB/Topics/MultiThreading - Revision history2024-03-29T14:29:36ZRevision history for this page on the wikiMediaWiki 1.38.6https://public.kitware.com/Wiki/index.php?title=ARB/Topics/MultiThreading&diff=31792&oldid=prevSploix: Created page with "==Purpose== VTK has adopted a MPI based strategy for parallelization. New strategies are currently designed to use new architectures like multi-core or hybrid systems. The aim o..."2010-10-12T14:27:49Z<p>Created page with "==Purpose== VTK has adopted a MPI based strategy for parallelization. New strategies are currently designed to use new architectures like multi-core or hybrid systems. The aim o..."</p>
<p><b>New page</b></p><div>==Purpose==<br />
<br />
VTK has adopted a MPI based strategy for parallelization. New strategies are currently designed to use new architectures like multi-core or hybrid systems. The aim of this page is to provide an overview of the current efforts.<br />
<br />
==Strategies==<br />
<br />
Several strategies can be used to parallelize VTK. We try to summarize those here : <br />
* MPI-based parallelism :<br />
** VTK can be executed in an MPI job, even on non-distributed computers. Datasets are then distributed between MPI processes.<br />
* Execution Model<br />
** Parallel pipeline branches : each independent branch can be executed simultaneously.<br />
** Concurrent streaming of multiple pieces : several pieces can be streamed together in a pipeline, each one at a different stage of the pipeline.<br />
** Apply a single algorithm concurrently to multiple blocs : if the algorithm treat each bloc independently, it could be applied to all blocs simultaneously.<br />
* Intra-algorithm parallelism : many algorithms in VTK can be parallelized at a fine grain (per cell, point, row...) level.<br />
<br />
==Current Efforts==<br />
<br />
* Execution Model :<br />
** Claudio T. Silva et al. have been working on the [http://www.sci.utah.edu/~hvo/papers/pds.pdf HyperFlow] enhancement.<br />
* Intra-algorithm :<br />
** Imaging pipeline <br />
** Ray casting algorithms<br />
<br />
The proposed [http://www.vtk.org/Wiki/ARB/Topics/Task_Stealing_framework Task Stealing framework] focuses primarily on the intra-algorithm parallelization, and could also be used by the execution model.</div>Sploix