Name: accelerate Version: 0.9.0.0 Cabal-version: >= 1.6 Tested-with: GHC >= 7.0.3 Build-type: Simple Synopsis: An embedded language for accelerated array processing Description: 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: . * 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 . License: BSD3 License-file: LICENSE Author: Manuel M T Chakravarty, Gabriele Keller, Sean Lee, Ben Lever Trevor L. McDonell Sean Seefried Maintainer: Manuel M T Chakravarty Homepage: http://www.cse.unsw.edu.au/~chak/project/accelerate/ Bug-reports: https://github.com/mchakravarty/accelerate/issues Category: Compilers/Interpreters, Concurrency, Data Stability: Experimental -- Should be in the Library stanza, and only enabled for the CUDA backend, -- but Cabal does not support that. Data-files: cubits/accelerate_cuda_extras.h cubits/accelerate_cuda_function.h cubits/accelerate_cuda_shape.h cubits/accelerate_cuda_stencil.h cubits/accelerate_cuda_texture.h cubits/accelerate_cuda_util.h cubits/generate.inl cubits/backpermute.inl cubits/fold.inl cubits/foldAll.inl cubits/foldSeg.inl cubits/map.inl cubits/stencil.inl cubits/stencil2.inl cubits/permute.inl cubits/reduce.inl cubits/replicate.inl cubits/scan.inl cubits/scan1.inl cubits/slice.inl cubits/zipWith.inl cubits/thrust/safe_scan_intervals.inl cubits/thrust/inclusive_scan.inl cubits/thrust/exclusive_scan.inl Extra-source-files: INSTALL include/accelerate.h utils/README utils/Paths_accelerate.hs utils/dot_ghci Flag llvm Description: Enable the LLVM backend (sequential) Default: False Flag cuda Description: Enable the CUDA parallel backend for NVIDIA GPUs Default: True Flag more-pp Description: Enable HTML and Graphviz pretty printing. Default: False Flag pcache Description: Enable the persistent caching of the compiled CUDA modules (experimental) Default: False Flag test-suite Description: Export extra test modules Default: False Flag bounds-checks Description: Enable bounds checking Default: True Flag unsafe-checks Description: Enable bounds checking in unsafe operations Default: False Flag internal-checks Description: Enable internal consistency checks Default: False Flag io Description: Provide access to the block copy I/O functionality Default: False Flag inplace Default: False Library Build-depends: array >= 0.3 && < 0.5, base == 4.*, containers >= 0.3 && < 0.5, directory >= 1.0 && < 1.2, ghc-prim == 0.2.*, mtl == 2.0.*, pretty >= 1.0 && < 1.2 Include-Dirs: include if flag(llvm) Build-depends: llvm >= 0.6.8 if flag(cuda) Build-depends: binary == 0.5.*, bytestring == 0.9.*, cuda >= 0.2.2, fclabels >= 1.0 && < 1.2, filepath >= 1.0 && < 1.4, language-c >= 0.3 && < 0.5, transformers == 0.2.*, unix >= 2.4 && < 2.6, zlib == 0.5.* && < 0.5.3.2 if flag(io) Build-depends: bytestring == 0.9.* -- if flag(test-suite) -- Build-depends: QuickCheck == 2.* if flag(more-pp) Build-depends: bytestring == 0.9.*, blaze-html == 0.3.*, text == 0.10.* if flag(inplace) hs-source-dirs: . utils Exposed-modules: Data.Array.Accelerate Data.Array.Accelerate.Interpreter Data.Array.Accelerate.Analysis.Shape Data.Array.Accelerate.Analysis.Type Data.Array.Accelerate.Array.Sugar Data.Array.Accelerate.Array.Representation Data.Array.Accelerate.Smart Data.Array.Accelerate.AST Data.Array.Accelerate.Array.Data Data.Array.Accelerate.Tuple Data.Array.Accelerate.Type Data.Array.Accelerate.Pretty -- If flag(llvm) -- Exposed-modules: Data.Array.Accelerate.LLVM if flag(cuda) Exposed-modules: Data.Array.Accelerate.CUDA if flag(io) Other-modules: Data.Array.Accelerate.IO.BlockCopy Exposed-modules: Data.Array.Accelerate.IO Data.Array.Accelerate.IO.Ptr Data.Array.Accelerate.IO.ByteString -- If flag(test-suite) -- Exposed-modules: Data.Array.Accelerate.Test -- Other-modules: Data.Array.Accelerate.Test.QuickCheck -- Data.Array.Accelerate.Test.QuickCheck.Arbitrary Other-modules: Data.Array.Accelerate.Internal.Check Data.Array.Accelerate.Array.Delayed Data.Array.Accelerate.Analysis.Stencil Data.Array.Accelerate.Debug Data.Array.Accelerate.Language Data.Array.Accelerate.Prelude Data.Array.Accelerate.Pretty.Print Data.Array.Accelerate.Pretty.Traverse Paths_accelerate if flag(more-pp) Other-modules: Data.Array.Accelerate.Pretty.HTML Data.Array.Accelerate.Pretty.Graphviz -- If flag(llvm) -- Other-modules: Data.Array.Accelerate.LLVM.CodeGen if flag(cuda) CPP-options: -DACCELERATE_CUDA_BACKEND Other-modules: Data.Array.Accelerate.CUDA.Analysis.Device Data.Array.Accelerate.CUDA.Analysis.Hash Data.Array.Accelerate.CUDA.Analysis.Launch Data.Array.Accelerate.CUDA.Array.Data Data.Array.Accelerate.CUDA.CodeGen.Data Data.Array.Accelerate.CUDA.CodeGen.Skeleton Data.Array.Accelerate.CUDA.CodeGen.Stencil Data.Array.Accelerate.CUDA.CodeGen.Tuple Data.Array.Accelerate.CUDA.CodeGen.Util Data.Array.Accelerate.CUDA.CodeGen Data.Array.Accelerate.CUDA.Compile Data.Array.Accelerate.CUDA.Execute Data.Array.Accelerate.CUDA.State if flag(pcache) CPP-options: -DACCELERATE_CUDA_PERSISTENT_CACHE if flag(bounds-checks) cpp-options: -DACCELERATE_BOUNDS_CHECKS if flag(unsafe-checks) cpp-options: -DACCELERATE_UNSAFE_CHECKS if flag(internal-checks) cpp-options: -DACCELERATE_INTERNAL_CHECKS ghc-options: -O2 -Wall -funbox-strict-fields -fno-warn-name-shadowing if impl(ghc >= 7.0) ghc-options: -fspec-constr-count=25 Extensions: BangPatterns, CPP, DeriveDataTypeable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, GADTs, MagicHash, MultiParamTypeClasses, PatternGuards, RankNTypes, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, TypeSynonymInstances, UnboxedTuples Source-repository head Type: git Location: git://github.com/mchakravarty/accelerate.git