GPU-accelerated array computations in Haskell
I just published stable release 0.12 of the embedded array language Accelerate for high-performance GPU computing on Hackage. The release includes example applications, such as a real-time Canny edge detector, a fluid flow simulator, and a quasicrystal animation, as well as example algorithms, such as radixsort, matrix computations, and a Black-Scholes option pricing model.
In the new modularised architecture, the Accelerate release comprises four packages:
- accelerate (the main package providing the Accelerate language),
- accelerate-io (conversion operations with other Haskell array libraries, including the data-parallel companion library Repa),
- accelerate-cuda (backend targetting NVIDIA GPUs via the CUDA SDK), and
- accelerate-examples (example applications and regression tests).
For more information, see Accelerate on GitHub. To use the CUDA backend, you need a CUDA-enabled NVIDIA GPU as well as having the CUDA SDK already installed.