[vtk-developers] Pitch for Google Summer of Code topics
berk.geveci at kitware.com
Wed Mar 11 16:12:47 EDT 2015
I wanted to make a pitch for the Google Summer of Code topics listed below.
Better support for shared-memory parallelism is essential for a healthy VTK
for many years to come. If you are a student, please consider writing a
proposal for one of these topics. If you are a professor/mentor, please
encourage strong developers in your institution to apply.
*Shared Memory Parallelism in VTK*
Brief explanation: Development of multi-threaded algorithms in VTK.
Multiple R&D efforts are leading the creation of an infrastructure to
support next generation multi-threaded parallel algorithm development in
VTK. These efforts are based on modern parallel libraries such as Intel TBB
and Inria KAAPI. The main goal of this project will be the development of
algorithms that leverage this infrastructure. The focus will be on
upgrading existing core algorithms such as iso-surfacing, clipping,
cutting, warping etc. to be parallel. Ideally, this will include
modernization of the old multi-threading code in the imaging pipeline.
Expected results: A number of algorithms that execute in parallel using
shared memory. Scalability of new algorithms will have to be measured and
documented. Development of regression tests and examples will be also
Prerequisites: Experience in C++ and multi-threaded code development.
Understanding of core visualization algorithms and data structures. Some
experience in VTK ideally but not necessary.
Mentor: Berk Geveci (berk dot geveci at kitware dot com) and David Gobbi
(david dot gobbi at gmail dot com)
*Fine-Grained Parallelism in VTK-m*
Brief explanation: VTK-m is a toolkit of scientific visualization
algorithms for emerging processor architectures ( GPU's and Coprocessors's
). VTK-m is designed for fine-grained concurrency and provides abstract
data and execution models that can be applied to a variety of algorithms.
The goal of the project will be on developing algorithms such as Slice by
implicit surface, Gradient, Streamlines, External Faces, Resample, etc.
using VTKM-m data and execution model.
Expected results: A collection of algorithms that are processor
architecture agnostic and execute on GPU's and Coprocessor's using VTK-m's
data and execution model. Performance of new algorithms will have to be
measured and documented. Development of regression tests and examples will
be also expected.
Prerequisites: Experience in templated C++ development, visualization
algorithms, data structures and highly parallel architectures such as
GPU's. Some experience in VTK or CUDA or OpenCL would be ideal but not
Mentor: Robert Maynard (robert dot maynard at kitware dot com) and Kenneth
Moreland (kmorel at sandia dot gov)
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the vtk-developers