accelerate: An embedded language for accelerated array processing
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.
An experimental OpenCL backend is available at https://github.com/HIPERFIT/accelerate-opencl and an experimental multicore CPU backend building on the Repa array library is available at https://github.com/blambo/accelerate-repa.
Known bugs: https://github.com/AccelerateHS/accelerate/issues
New in 0.12.1.0: CUDA backend support for Char and Bool; bug fixes
New in 0.12.0.0: Full sharing recovery in scalar expressions and array computations. Two new example applications in package accelerate-examples: Real-time Canny edge detection and fluid flow simulator (both including a graphical frontend). Bug fixes.
New in 0.11.0.0: New functions zip3, zip4, unzip3, unzip4, fill, enumFromN, enumFromStepN, tail, init, drop, take, slit, gather, gatherIf, scatter, scatterIf, and shapeSize. New simplified AST (in package accelerate-backend-kit) for backend writers who want to avoid the complexities of the type-safe AST.
New in 0.10.0.0: Complete sharing recovery for scalar expressions (but currently disabled by default). Also bug fixes in array sharing recovery and a few new convenience functions.
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
andfoldSeg
supported in the CUDA backend; frontend and interpreter support forstencil
; bug fixesNew in 0.7.1.0: the CUDA backend and a number of scalar functions
For documentation, see the homepage and https://github.com/AccelerateHS/accelerate/wiki.
Modules
[Index]
- Data
- Array
- Data.Array.Accelerate
- Data.Array.Accelerate.AST
- Analysis
- Data.Array.Accelerate.Analysis.Shape
- Data.Array.Accelerate.Analysis.Stencil
- Data.Array.Accelerate.Analysis.Type
- Array
- Data.Array.Accelerate.Array.Data
- Data.Array.Accelerate.Array.Representation
- Data.Array.Accelerate.Array.Sugar
- Data.Array.Accelerate.Interpreter
- Data.Array.Accelerate.Pretty
- Data.Array.Accelerate.Smart
- Data.Array.Accelerate.Tuple
- Data.Array.Accelerate.Type
- Data.Array.Accelerate
- Array
Flags
Automatic Flags
Name | Description | Default |
---|---|---|
llvm | Enable the LLVM backend (sequential) | Disabled |
more-pp | Enable HTML and Graphviz pretty printing. | Disabled |
bounds-checks | Enable bounds checking | Enabled |
unsafe-checks | Enable bounds checking in unsafe operations | Disabled |
internal-checks | Enable internal consistency checks | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- accelerate-0.12.2.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 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, 0.10.0.0, 0.12.0.0, 0.12.1.0, 0.12.2.0, 0.13.0.0, 0.13.0.1, 0.13.0.2, 0.13.0.3, 0.13.0.4, 0.13.0.5, 0.14.0.0, 0.15.0.0, 0.15.1.0, 1.0.0.0, 1.1.0.0, 1.1.1.0, 1.2.0.0, 1.2.0.1, 1.3.0.0 |
---|---|
Dependencies | array (>=0.3 && <0.5), base (>=4 && <5), blaze-html (>=0.3 && <0.4), bytestring (>=0.9 && <0.10), containers (>=0.3 && <0.6), ghc-prim, pretty (>=1.0 && <1.2), text (>=0.10 && <0.11) [details] |
Tested with | ghc >=7.0.3 |
License | BSD-3-Clause |
Author | Manuel M T Chakravarty, Gabriele Keller, Sean Lee, Ben Lever, Trevor L. McDonell, Ryan Newtown, Sean Seefried |
Maintainer | Manuel M T Chakravarty <chak@cse.unsw.edu.au> |
Category | Compilers/Interpreters, Concurrency, Data, Parallelism |
Home page | https://github.com/AccelerateHS/accelerate/ |
Bug tracker | https://github.com/AccelerateHS/accelerate/issues |
Source repo | head: git clone git://github.com/AccelerateHS/accelerate.git |
Uploaded | by TrevorMcDonell at 2013-04-10T06:37:01Z |
Distributions | |
Reverse Dependencies | 44 direct, 10 indirect [details] |
Downloads | 32698 total (31 in the last 30 days) |
Rating | 2.5 (votes: 6) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |