accelerate



An embedded language for accelerated array processing

Category: Compilers/Interpreters, Concurrency, Data

Hackage Homepage

About accelerate

This library defines an embedded language for regular, multi-dimensional array computations with multiple backends to facilitate high-performance implementations. Currently, there are two backends: (1) an interpreter that serves as a reference implementation of the intended semantics of the language and (2) a CUDA backend generating code for CUDA-capable NVIDIA GPUs. To use the CUDA backend, you need to have CUDA version 3.x installed. The CUDA backend currently doesn't support 'Char' and 'Bool' arrays. Known bugs: <https://github.com/mchakravarty/accelerate/issues> * New in 0.9.0.0: Streaming, precompilation, Repa-style indices, stencils, more scans, rank-polymorphic fold, generate, block I/O & many bug fixes * New in 0.8.1.0: bug fixes and some performance tweaks * New in 0.8.0.0: 'replicate', 'slice' and 'foldSeg' supported in the CUDA backend; frontend and interpreter support for 'stencil'; bug fixes * New in 0.7.1.0: the CUDA backend and a number of scalar functions For documentation, see the homepage and <https://github.com/mchakravarty/accelerate/wiki>.

Author

Manuel M T Chakravarty, Gabriele Keller, Sean Lee, Ben Lever Trevor L. McDonell Sean Seefried

Maintainer

Manuel M T Chakravarty <chak@cse.unsw.edu.au>

License

BSD3

Stability

Experimental

Dependencies

array, base, containers, directory, ghc-prim, mtl, pretty, llvm, binary, bytestring, cuda, fclabels, filepath, language-c, transformers, unix, zlib, blaze-html, text

Modules

Latest Version

0.9.0.1

Older Versions

0.4.0, 0.5.0.0, 0.6.0.0, 0.7.1.0, 0.8.0.0, 0.8.1.0, 0.9.0.0, 0.9.0.1