'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>'
'acceleratellvmnative': Backend supporting parallel execution on multicore CPUs.
'acceleratellvmptx': Backend supporting parallel execution on CUDAcapable 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>
'acceleratecuda': Backend targeting CUDAenabled NVIDIA GPUs. Requires a GPU with compute compatibility 1.2 or greater. /NOTE: This backend is being deprecated in favour of 'acceleratellvmptx'./
'accelerateexamples': Computational kernels and applications showcasing the use of Accelerate as well as a regression test suite, supporting function and performance testing.
'accelerateio': Fast conversions between Accelerate arrays and other array formats (including vector and repa).
'acceleratefft': Discrete Fourier transforms, with FFI bindings to optimised 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/]
Mailing list: <acceleratehaskell'googlegroups.com> (discussion of both use and development welcome).
Sign up for the mailing list here: <http://groups.google.com/group/acceleratehaskell>
Bug reports and issue tracking: <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 

