'Data.Array.Accelerate' defines an embedded array language for computations for highperformance computing in Haskell. Computations on multidimensional, regular arrays are expressed in the form of parameterised collective operations, such as maps, reductions, and permutations. These computations may then be online compiled and executed on a range of architectures.
[/A simple example/]
As a simple example, consider the computation of a dot product of two vectors of floating point numbers:
> dotp :: Acc (Vector Float) > Acc (Vector Float) > Acc (Scalar Float) > dotp xs ys = fold (+) 0 (zipWith (*) xs ys)
Except for the type, this code is almost the same as the corresponding Haskell code on lists of floats. The types indicate that the computation may be onlinecompiled for performance  for example, using 'Data.Array.Accelerate.LLVM.PTX' it may be onthefly offloaded to the GPU.
[/Additional components/]
The following supported addons are available as separate packages. Install them from Hackage with 'cabal install <package>'
CPUs.
NVIDIA GPUs. Requires a GPU with compute capability 2.0 or greater. See the following table for supported GPUs: <http://en.wikipedia.org/wiki/CUDA#Supported_GPUs>
Requires a GPU with compute compatibility 1.2 or greater. /NOTE: This backend is being deprecated in favour of 'acceleratellvmptx'./
use of Accelerate as well as a regression test suite, supporting function and performance testing.
formats (including vector and repa).
implementations.
'acceleratebignum': Fixedwidth large integer arithmetic.
'colouraccelerate': Colour representations in Accelerate (RGB, sRGB, HSV,
and HSL).
'glossaccelerate': Generate gloss pictures from Accelerate.
'glossrasteraccelerate': Parallel rendering of raster images and
animations.
'lensaccelerate': Lens operators for Accelerate types.
'linearaccelerate': Linear vector spaces in Accelerate.
'mwcrandomaccelerate': Generate Accelerate arrays filled with high quality
pseudorandom numbers.
[/Examples and documentation/]
Haddock documentation is included in the package
The 'accelerateexamples' package demonstrates a range of computational kernels and several complete applications, including:
An implementation of the Canny edge detection algorithm
An interactive Mandelbrot set generator
A particlebased simulation of stable fluid flows
An /n/body simulation of gravitational attraction between solid particles
An implementation of the PageRank algorithm
A simple interactive ray tracer
A particle based simulation of stable fluid flows
A cellular automata simulation
A "password recovery" tool, for dictionary lookup of MD5 hashes
'luleshaccelerate' is an implementation of the Livermore Unstructured Lagrangian Explicit Shock Hydrodynamics (LULESH) miniapp. LULESH represents a typical hydrodynamics code such as ALE3D, but is highly simplified and hardcoded to solve the Sedov blast problem on an unstructured hexahedron mesh.
[/Mailing list and contacts/]
and development welcome).
<http://groups.google.com/group/acceleratehaskell>
<https://github.com/AccelerateHS/accelerate/issues> .
Package Version  Update ID  Released  Package Hub Version  Platforms  Subpackages 

1.0.0.0bp150.2.3 info  GA Release  20180801  15 


1.0.0.0bp150.2.5 info  GA Release  20180731  15 


1.0.0.0bp150.2.7 info  GA Release  20180730  15 

