I am hereby trying to compile a list of open source projects that are in part based on CUDA. Please add links to the respective project home pages here, along with a one sentence description of what the project is about. One posting per project.
This is about learning how to integrate CUDA into larger projects and how quality CUDA code can look like. The world is larger than a set of SDK samples. ;-)
GNURadio: Software defined radio. A hardware/software combination that does baseband signal processing in software. Experiments were carried out to integrate CUDA into this mix.
MediaCoder: A transcoding application for videos with a strong focus on mobile players. Some operations (de-interlacing, scaling, encoding) are have been CUDA accelerated.
CUDA support in Bullet so far was very incomplete. The last thing I heard that they are going to push heavily into the OpenCL direction, in part sponsored by ATI (AMD). Here’s something I did in Bullet (CPU only) http://www.youtube.com/watch?v=0bLAq7btZbU - Bullet seems to be the only major physics package to offer a flat cylinder collision primitive suitable for coins. But I digress ;)
Thrust: A Parallel Template Library for CUDA. Thrust provides a flexible high-level interface for GPU programming that greatly enhances developer productivity.
OpenCurrent: An open source C++ library for solving Partial Differential Equations (PDEs) over regular grids using the CUDA platform from NVIDIA.
Pycuda: A module which allows access to the complete range of CUDA functionality in Python, including seamless numpy integration, OpenGL interoperability and lots more. Released under the MIT/X consortium license.
FOLKI-GPU an optical-flow estimation, implemented on CUDA
HOOMD-Blue - A general purpose molecular dynamics simulation software, built from the ground up for CUDA.
Flam4 CUDA: A CUDA accelerated renderer for fractal frames. Sample videos here and here. Use other tools like Apophysis 2.0 to generate the parameter files (.flame files). A new and ongoing approach to port fractal frame rendering to CUDA is described here.
CUJ2K: A CUDA accelerated JPEG 2000 encoder. Command line tool and C/C++ library. This is student work with excellent documentation. Notable speedup achieved only for large files.
Ocelot : A Binary Translation Framework for PTX
Just a small weekend-project I did, to test what CUDA offers:
It’s a mandelbrot zoomer, code is GPL, and CUDA speedup is more than 40.
Msieve is a library for factoring large integers, as in RSA-size numbers. The polynomial selection phase of the general number field sieve has a great deal of CUDA code, and the speedup over a CPU is enormous (10-50x)
i’m currently working on a cuda wrapper for Scilab (a numerical analysis software), you can checkout git repos :
I know that this is an old thread. But the validity of the topic is still very important. Is there a way to get a list of ongoing/proposed opensource projects? There might be many people that wants to be involved.
PFAC is an open library for exact string matching performed on GPUs.
Source is available at http://code.google.com/p/pfac/