name: accelerate-llvm-ptx version: 1.3.0.0 cabal-version: >= 1.10 tested-with: GHC >= 8.6 build-type: Simple synopsis: Accelerate backend for NVIDIA GPUs description: This library implements a backend for the /Accelerate/ language which generates LLVM-IR targeting CUDA capable GPUs. For further information, refer to the main package. . [/Dependencies/] . Haskell dependencies are available from Hackage. The following external libraries are alse required: . * . * . [/Installing LLVM/] . /Homebrew/ . Example using Homebrew on macOS: . > brew install llvm-hs/llvm/llvm-9 . /Debian & Ubuntu/ . For Debian/Ubuntu based Linux distributions, the LLVM.org website provides binary distribution packages. Check for instructions for adding the correct package database for your OS version, and then: . > apt-get install llvm-9-dev . /Building from source/ . If your OS does not have an appropriate LLVM distribution available, you can also build from source. Detailed build instructions are available on . Make sure to include the cmake build options @-DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON@ so that the @libLLVM@ shared library will be built. Also ensure that the @LLVM_TARGETS_TO_BUILD@ option includes the @NVPTX@ target (if not specified all targets are built). . license: BSD3 license-file: LICENSE author: Trevor L. McDonell maintainer: Trevor L. McDonell bug-reports: https://github.com/AccelerateHS/accelerate/issues category: Accelerate, Compilers/Interpreters, Concurrency, Data, Parallelism extra-source-files: CHANGELOG.md README.md -- Configuration flags -- ------------------- Flag nvvm Default: False Description: Use the NVVM library to generate optimised PTX -- Build configuration -- ------------------- Library exposed-modules: Data.Array.Accelerate.LLVM.PTX Data.Array.Accelerate.LLVM.PTX.Foreign other-modules: Data.Array.Accelerate.LLVM.PTX.Analysis.Device Data.Array.Accelerate.LLVM.PTX.Analysis.Launch Data.Array.Accelerate.LLVM.PTX.Array.Data Data.Array.Accelerate.LLVM.PTX.Array.Prim Data.Array.Accelerate.LLVM.PTX.Array.Remote Data.Array.Accelerate.LLVM.PTX.Array.Table Data.Array.Accelerate.LLVM.PTX.Context Data.Array.Accelerate.LLVM.PTX.Debug Data.Array.Accelerate.LLVM.PTX.Pool Data.Array.Accelerate.LLVM.PTX.State Data.Array.Accelerate.LLVM.PTX.Target Data.Array.Accelerate.LLVM.PTX.Execute Data.Array.Accelerate.LLVM.PTX.Execute.Async Data.Array.Accelerate.LLVM.PTX.Execute.Environment Data.Array.Accelerate.LLVM.PTX.Execute.Event Data.Array.Accelerate.LLVM.PTX.Execute.Marshal Data.Array.Accelerate.LLVM.PTX.Execute.Stream Data.Array.Accelerate.LLVM.PTX.Execute.Stream.Reservoir Data.Array.Accelerate.LLVM.PTX.CodeGen Data.Array.Accelerate.LLVM.PTX.CodeGen.Base Data.Array.Accelerate.LLVM.PTX.CodeGen.Fold Data.Array.Accelerate.LLVM.PTX.CodeGen.FoldSeg Data.Array.Accelerate.LLVM.PTX.CodeGen.Generate Data.Array.Accelerate.LLVM.PTX.CodeGen.Intrinsic Data.Array.Accelerate.LLVM.PTX.CodeGen.Loop Data.Array.Accelerate.LLVM.PTX.CodeGen.Map Data.Array.Accelerate.LLVM.PTX.CodeGen.Permute Data.Array.Accelerate.LLVM.PTX.CodeGen.Scan Data.Array.Accelerate.LLVM.PTX.CodeGen.Stencil Data.Array.Accelerate.LLVM.PTX.CodeGen.Transform Data.Array.Accelerate.LLVM.PTX.Compile Data.Array.Accelerate.LLVM.PTX.Compile.Cache Data.Array.Accelerate.LLVM.PTX.Compile.Libdevice Data.Array.Accelerate.LLVM.PTX.Compile.Libdevice.Load Data.Array.Accelerate.LLVM.PTX.Compile.Libdevice.TH Data.Array.Accelerate.LLVM.PTX.Link Data.Array.Accelerate.LLVM.PTX.Link.Cache Data.Array.Accelerate.LLVM.PTX.Link.Object Data.Array.Accelerate.LLVM.PTX.Embed System.Process.Extra GHC.Heap.NormalForm Paths_accelerate_llvm_ptx build-depends: base >= 4.10 && < 5 , accelerate == 1.3.* , accelerate-llvm == 1.3.* , bytestring >= 0.10.4 , containers >= 0.5 && < 0.7 , cuda >= 0.10 , deepseq >= 1.3 , directory >= 1.0 , dlist >= 0.6 , file-embed >= 0.0.8 , filepath >= 1.0 , hashable >= 1.2 , llvm-hs >= 4.1 && < 9.1 , llvm-hs-pure >= 4.1 && < 9.1 , mtl >= 2.2.1 , nvvm >= 0.9 , pretty >= 1.1 , process >= 1.4.3 , template-haskell , unordered-containers >= 0.2 if impl(ghc >= 8.6) build-depends: ghc-heap else build-depends: ghc , ghci cpp-options: -DUNBOXED_TUPLES=1 hs-source-dirs: src default-language: Haskell2010 ghc-options: -O2 -Wall -fwarn-tabs ghc-prof-options: -caf-all -auto-all if impl(ghc >= 8.0) ghc-options: -Wmissed-specialisations if flag(nvvm) cpp-options: -DACCELERATE_USE_NVVM test-suite nofib-llvm-ptx type: exitcode-stdio-1.0 hs-source-dirs: test/nofib main-is: Main.hs build-depends: base >= 4.10 , accelerate , accelerate-llvm-ptx default-language: Haskell2010 ghc-options: -Wall -O2 -threaded -rtsopts -with-rtsopts=-A128M -with-rtsopts=-n4M -- -with-rtsopts=-N source-repository head type: git location: https://github.com/AccelerateHS/accelerate-llvm.git source-repository this type: git tag: v1.3.0.0 location: https://github.com/AccelerateHS/accelerate-llvm.git -- vim: nospell