#13: Add explicit multi-threading support
-------------------------+-------------------------------------------------
Reporter: Carsten | Owner:
Type: | Status: new
enhancement | Milestone: asap
Priority: normal | Version: svn-head
Component: other | Keywords: multi-threading, multi-core,
Resolution: | threading, pthreads
Platform: |
-------------------------+-------------------------------------------------
Comment (by Carsten):
For completeness, this is the relevant section from
http://www.cafu.de
/project-ideas:
= Multi-Threading and Parallelization =
Most code in Cafu doesn't make use of multi-threading and parallelization
yet, even though there are several opportunities where serial algorithms
can be turned into parallel counterparts for good effect. The goal of this
project is to identify algorithms that are suitable for parallelization
and to parallelize them by using a portable technique.
Candidates for parallelization include the Radiosity computations
(CaLight), the binary space partitioning and potential visibility set
programs (CaBSP and CaPVS), the Cafu Engine itself, and the level editor
CaWE (e.g. real-time terrain editing). The task also includes basic
performance profiling: it should be possible to run the parallel programs
with a custom number of threads and basic statistic should be gathered.
The implementation should be portable, e.g. using PThread, OpenCL or Intel
TBB, but we're happy to discuss vendor-specific approaches as well.
''Skills needed:'' This project requires an understanding of the
algorithms to be parallelized (e.g. the Radiosity implementation in
CaLight), and a good understanding of the basics (and pitfalls) of multi-
threaded programming. A interesting challenge for advanced students.
--
Ticket URL: <
http://trac.cafu.de/ticket/13#comment:1>
Cafu 3D Game and Graphics Engine <
http://www.cafu.de>
The open-source game engine and graphics engine for multiplayer, cross-platform, real-time 3D action.