Cabal revisions of accelerate-examples-0.15.0.0
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
-Name: accelerate-examples-Version: 0.15.0.0-Cabal-version: >=1.6-Tested-with: GHC == 7.8.*-Build-type: Simple--Synopsis: Examples using the Accelerate library-Description:- This package demonstrates a number of computation kernels and applications- showcasing the /Accelerate/ language and associated backend implementations.- It is also used for performance and regression testing.- .- Refer to the main /Accelerate/ package for more information:- <http://hackage.haskell.org/package/accelerate>- .--License: BSD3-License-file: LICENSE-Author: The Accelerate Team-Maintainer: Trevor L. McDonell <tmcdonell@cse.unsw.edu.au>-Homepage: https://github.com/AccelerateHS/accelerate-examples-Bug-reports: https://github.com/AccelerateHS/accelerate/issues--Category: Compilers/Interpreters, Concurrency, Data, Parallelism-Stability: Experimental--Extra-source-files: data/hashcat/README.md- data/matrices/README.md--Flag gui- Description: Enable gloss-based GUIs, where applicable. If not- enabled, the application always runs in benchmark mode.- Default: True--Flag ekg- Description: Enable EKG remote monitoring server at <http://localhost:8000>- Default: True--Flag cuda- Description: Enable the CUDA parallel backend for NVIDIA GPUs- Default: True--Flag opencl- Description: Enable the OpenCL parallel backend- Default: False--Flag llvm-cpu- Description: Enable the LLVM backend for multicore CPUs- Default: True--Flag llvm-gpu- Description: Enable the LLVM backend for NVIDIA CPUs- Default: True--Flag llvm-multi- Description: Enable the multi-device LLVM backend- Default: True----- Flags to specify which programs to build----Flag nofib- Description: Regression test suite- Default: True--Flag smvm- Description: Sparse-matrix vector multiplication benchmark- Default: True--Flag crystal- Description: A visualisation of a sum of waves in a plane- Default: True--Flag canny- Description: Canny edge detection benchmark- Default: True--Flag mandelbrot- Description: A Mandelbrot fractal benchmark- Default: True--Flag fluid- Description: An interactive particle-based fluid simulation- Default: True--Flag nbody- Description: Simulation of gravitational attraction between solid particles- Default: True--Flag smoothlife- Description: A cellular automata simulation- Default: True--Flag hashcat- Description: A "password recovery" application for MD5 cracking- Default: True--Flag fft- Description: Simple FFT-based high/low-pass image filtering- Default: True--Flag pagerank- Description: Implementation of the PageRank algorithm- Default: True--Flag ray- Description: A simple real-time ray tracer- Default: True--Flag kmeans- Description: An implementation of k-means clustering in a plane- Default: True----- The main test program. This includes randomised quickcheck testing for array--- primitives, unit tests, imaginary/spectral/real programs, and benchmarks.------ TODO: add an analysis script to scrape benchmark results----Executable accelerate-nofib- Main-is: Main.hs- hs-source-dirs: lib- examples/nofib- examples/smvm-- other-modules: Config ParseArgs Monitoring- QuickCheck.Arbitrary.Array- QuickCheck.Arbitrary.Shape- Test.Base- Test.FFT- Test.IO- Test.IO.Ptr- Test.IO.Vector- Test.Imaginary- Test.Imaginary.DotP- Test.Imaginary.SASUM- Test.Imaginary.SAXPY- Test.Issues- Test.Issues.Issue93- Test.Issues.Issue102- Test.Issues.Issue114- Test.Issues.Issue119- Test.Issues.Issue123- Test.Issues.Issue137- Test.Issues.Issue168- Test.Issues.Issue184- Test.Issues.Issue185- Test.Issues.Issue187- Test.Prelude- Test.Prelude.Filter- Test.Prelude.IndexSpace- Test.Prelude.Mapping- Test.Prelude.PrefixSum- Test.Prelude.Reduction- Test.Prelude.Replicate- Test.Prelude.Stencil- Test.Sharing- Test.Spectral- Test.Spectral.BlackScholes- Test.Spectral.SMVM- Test.Spectral.RadixSort-- ghc-options: -Wall -O2- -threaded- -fpedantic-bottoms- -fno-full-laziness- -fno-excess-precision- -eventlog- -rtsopts-- ghc-prof-options: -auto-all-- extra-libraries: stdc++- c-sources: examples/nofib/Test/IO/fill_with_values.cpp- examples/nofib/Test/Spectral/BlackScholes.cpp-- if flag(cuda)- CPP-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*- other-modules: Test.Foreign-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(nofib)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-fft == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- array >= 0.3,- containers >= 0.5,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- HUnit >= 1.2,- QuickCheck >= 2.7,- test-framework >= 0.5,- test-framework-hunit >= 0.3,- test-framework-quickcheck2 >= 0.2,- random----- Sparse matrix vector multiplication--- -------------------------------------Executable accelerate-smvm- hs-source-dirs: examples/smvm lib- Main-is: Main.hs- other-modules: ParseArgs Monitoring- Config- Matrix- MatrixMarket- SMVM-- ghc-options: -O2 -Wall -threaded -rtsopts -eventlog- ghc-prof-options: -auto-all-- if impl(ghc >= 7.6)- ghc-options: -fsimpl-tick-factor=130-- if flag(cuda)- CPP-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(smvm)- buildable: False- else- build-depends: accelerate == 0.15.*,- base == 4.7.*,- attoparsec >= 0.10,- bytestring >= 0.9,- bytestring-lexing >= 0.2,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- primitive >= 0.5,- mwc-random >= 0.8,- vector >= 0.7,- vector-algorithms >= 0.4----- A quasicrystal demo as the sum of waves in a plane--- ----------------------------------------------------Executable accelerate-crystal- hs-source-dirs: examples/crystal lib- Main-is: Main.hs- other-modules: Config ParseArgs Monitoring-- ghc-options: -O2 -Wall -threaded -rtsopts -eventlog- ghc-prof-options: -auto-all-- if flag(gui)- CPP-options: -DACCELERATE_ENABLE_GUI-- if flag(cuda)- CPP-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(crystal)- buildable: False- else- build-depends: accelerate == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- gloss-raster-accelerate >= 1.7----- Image edge detection--- ----------------------Executable accelerate-canny- hs-source-dirs: examples/canny/src-acc lib- Main-is: Main.hs- other-modules: Config ParseArgs Canny Wildfire Monitoring-- ghc-options: -Wall- -threaded- -Odph- -fllvm- -optlo-O3- -eventlog- -rtsopts-- ghc-prof-options: -auto-all-- if flag(cuda)- CPP-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(canny)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- repa >= 3.1,- repa-io >= 3.1,- vector >= 0.7----- A simple mandelbrot generator--- -------------------------------Executable accelerate-mandelbrot- hs-source-dirs: examples/mandelbrot lib- Main-is: Main.hs- other-modules: Config World Mandel ParseArgs Monitoring-- ghc-options: -O2 -Wall -threaded -eventlog -rtsopts- ghc-prof-options: -auto-all-- if flag(gui)- CPP-options: -DACCELERATE_ENABLE_GUI-- if flag(cuda)- CPP-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*,- accelerate-llvm-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(llvm-cpu) && flag(llvm-gpu) && flag(llvm-multi)- CPP-options: -DACCELERATE_LLVM_MULTIDEV_BACKEND- build-depends: accelerate-llvm-multidev== 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(mandelbrot)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- gloss >= 1.7,- gloss-accelerate >= 1.7----- A stable fluid simulation--- ---------------------------Executable accelerate-fluid- Main-is: Main.hs- hs-source-dirs: examples/fluid/src-acc lib- other-modules: Config ParseArgs Monitoring- Event- Fluid- Type- World-- ghc-options: -O2 -Wall -threaded -eventlog -rtsopts- ghc-prof-options: -auto-all-- if flag(gui)- CPP-options: -DACCELERATE_ENABLE_GUI-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(fluid)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- bmp >= 1.2,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- gloss >= 1.7----- Simulation of gravitational attraction between solid particles--- ----------------------------------------------------------------Executable accelerate-nbody- Main-is: Main.hs- hs-source-dirs: examples/n-body lib- other-modules: Config ParseArgs Monitoring- Common.Body- Common.Dump- Common.Tree- Common.Type- Common.Util- Common.World- Gloss.Draw- Gloss.Event- Gloss.Simulate- Random.Array- Random.Position- Solver.BarnsHut- Solver.Naive1- Solver.Naive2-- ghc-options: -O2 -Wall -threaded -eventlog -rtsopts- ghc-prof-options: -auto-all-- if flag(gui)- cpp-options: -DACCELERATE_ENABLE_GUI-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(nbody)- buildable: False- else- build-depends: accelerate == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- gloss >= 1.7,- mwc-random >= 0.8----- A celular automata--- --------------------Executable accelerate-smoothlife- Main-is: Main.hs- hs-source-dirs: examples/smoothlife lib- other-modules: Config ParseArgs Monitoring- SmoothLife- Gloss.Draw- Gloss.Event- Gloss.Simulate- Random.Array- Random.Splat-- ghc-options: -O2 -Wall -threaded -threaded -rtsopts- ghc-prof-options: -auto-all-- if flag(gui)- cpp-options: -DACCELERATE_ENABLE_GUI-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(smoothlife)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-fft == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- gloss >= 1.7,- gloss-accelerate >= 1.7,- mwc-random >= 0.8----- A password recovery tool--- --------------------------Executable accelerate-hashcat- Main-is: Main.hs- hs-source-dirs: examples/hashcat lib- other-modules: Config ParseArgs Monitoring- Digest- MD5- Util-- ghc-options: -O2 -Wall -threaded -threaded -rtsopts- ghc-prof-options: -auto-all-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- CPP-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if !flag(hashcat)- buildable: False- else- build-depends: accelerate == 0.15.*,- base == 4.7.*,- bytestring >= 0.9,- bytestring-lexing >= 0.2,- cereal >= 0.3,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- mwc-random >= 0.8---- FFT examples--- --------------Executable accelerate-fft- Main-is: Main.hs- hs-source-dirs: examples/fft/src-acc lib- other-modules: Config- ParseArgs- HighPass- FFT-- ghc-options: -O2 -Wall -threaded -threaded -rtsopts- ghc-prof-options: -auto-all-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if !flag(fft)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-io == 0.15.*,- accelerate-fft == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 2.0,- filepath >= 1.0---- PageRank--- ----------Executable accelerate-pagerank- Main-is: Main.hs- hs-source-dirs: examples/pagerank lib- other-modules: Config- Page- Progress- Rank- Step- Count- Rank- Step- Load- ghc-options: -rtsopts -threaded -O2-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda == 0.15.*-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if !flag(pagerank)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- bytestring >= 0.9.2,- containers >= 0.4.2,- criterion >= 0.5 && < 1.0,- directory >= 1.1,- fclabels >= 1.0,- vector >= 0.9,- vector-algorithms >= 0.5.4----- Ray tracer--- ------------Executable accelerate-ray- Main-is: Main.hs- hs-source-dirs: examples/ray lib- other-modules: ParseArgs Monitoring- Config- Vec3- Gloss.Draw- Gloss.Event- Ray.Intersect- Ray.Trace- Scene.Light- Scene.Object- Scene.State- Scene.World-- if !flag(ray)- buildable: False- else- build-depends: accelerate == 0.15.*,- accelerate-io == 0.15.*,- base == 4.7.*,- criterion >= 0.5 && < 1.0,- fclabels >= 1.0,- gloss == 1.8.*,- gloss-accelerate == 1.8.*,- gloss-raster-accelerate == 1.8.*-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda >= 0.15-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(llvm-cpu) && flag(llvm-gpu) && flag(llvm-multi)- CPP-options: -DACCELERATE_LLVM_MULTIDEV_BACKEND- build-depends: accelerate-llvm-multidev== 0.15.*-- if flag(ekg)- cpp-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- if flag(gui)- CPP-options: -DACCELERATE_ENABLE_GUI-- ghc-options: -Wall -O2 -threaded -threaded -rtsopts- ghc-prof-options: -auto-all----- K-means--- ---------Executable accelerate-kmeans- Main-is: Main.hs- hs-source-dirs: examples/kmeans lib- other-modules: ParseArgs Monitoring- Config- Main- Kmeans-- if !flag(kmeans)- buildable: False- else- build-depends: accelerate == 0.15.*,- base == 4.7.*,- binary >= 0.7,- criterion >= 0.5 && < 1.0,- normaldistribution,- random-- if flag(cuda)- cpp-options: -DACCELERATE_CUDA_BACKEND- build-depends: accelerate-cuda >= 0.15-- if flag(llvm-cpu)- CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND- build-depends: accelerate-llvm-native == 0.15.*-- if flag(llvm-gpu)- CPP-options: -DACCELERATE_LLVM_PTX_BACKEND- build-depends: accelerate-llvm-ptx == 0.15.*-- if flag(ekg)- cpp-options: -DACCELERATE_ENABLE_EKG- build-depends: ekg >= 0.3- ghc-options: -with-rtsopts=-T-- ghc-options: -Wall -O2 -threaded -threaded -rtsopts- ghc-prof-options: -auto-all---source-repository head- type: git- location: https://github.com/AccelerateHS/accelerate-examples---- vim: nospell---+Name: accelerate-examples +Version: 0.15.0.0 +x-revision: 1 +Cabal-version: >=1.6 +Tested-with: GHC == 7.8.* +Build-type: Simple + +Synopsis: Examples using the Accelerate library +Description: + This package demonstrates a number of computation kernels and applications + showcasing the /Accelerate/ language and associated backend implementations. + It is also used for performance and regression testing. + . + Refer to the main /Accelerate/ package for more information: + <http://hackage.haskell.org/package/accelerate> + . + +License: BSD3 +License-file: LICENSE +Author: The Accelerate Team +Maintainer: Trevor L. McDonell <tmcdonell@cse.unsw.edu.au> +Homepage: https://github.com/AccelerateHS/accelerate-examples +Bug-reports: https://github.com/AccelerateHS/accelerate/issues + +Category: Compilers/Interpreters, Concurrency, Data, Parallelism +Stability: Experimental + +Extra-source-files: data/hashcat/README.md + data/matrices/README.md + +Flag gui + Description: Enable gloss-based GUIs, where applicable. If not + enabled, the application always runs in benchmark mode. + Default: True + +Flag ekg + Description: Enable EKG remote monitoring server at <http://localhost:8000> + Default: True + +Flag cuda + Description: Enable the CUDA parallel backend for NVIDIA GPUs + Default: True + +Flag opencl + Description: Enable the OpenCL parallel backend + Default: False + +Flag llvm-cpu + Description: Enable the LLVM backend for multicore CPUs + Default: True + +Flag llvm-gpu + Description: Enable the LLVM backend for NVIDIA CPUs + Default: True + +Flag llvm-multi + Description: Enable the multi-device LLVM backend + Default: True + + +-- Flags to specify which programs to build +-- +Flag nofib + Description: Regression test suite + Default: True + +Flag smvm + Description: Sparse-matrix vector multiplication benchmark + Default: True + +Flag crystal + Description: A visualisation of a sum of waves in a plane + Default: True + +Flag canny + Description: Canny edge detection benchmark + Default: True + +Flag mandelbrot + Description: A Mandelbrot fractal benchmark + Default: True + +Flag fluid + Description: An interactive particle-based fluid simulation + Default: True + +Flag nbody + Description: Simulation of gravitational attraction between solid particles + Default: True + +Flag smoothlife + Description: A cellular automata simulation + Default: True + +Flag hashcat + Description: A "password recovery" application for MD5 cracking + Default: True + +Flag fft + Description: Simple FFT-based high/low-pass image filtering + Default: True + +Flag pagerank + Description: Implementation of the PageRank algorithm + Default: True + +Flag ray + Description: A simple real-time ray tracer + Default: True + +Flag kmeans + Description: An implementation of k-means clustering in a plane + Default: True + + +-- The main test program. This includes randomised quickcheck testing for array +-- primitives, unit tests, imaginary/spectral/real programs, and benchmarks. +-- +-- TODO: add an analysis script to scrape benchmark results +-- +Executable accelerate-nofib + Main-is: Main.hs + hs-source-dirs: lib + examples/nofib + examples/smvm + + other-modules: Config ParseArgs Monitoring + QuickCheck.Arbitrary.Array + QuickCheck.Arbitrary.Shape + Test.Base + Test.FFT + Test.IO + Test.IO.Ptr + Test.IO.Vector + Test.Imaginary + Test.Imaginary.DotP + Test.Imaginary.SASUM + Test.Imaginary.SAXPY + Test.Issues + Test.Issues.Issue93 + Test.Issues.Issue102 + Test.Issues.Issue114 + Test.Issues.Issue119 + Test.Issues.Issue123 + Test.Issues.Issue137 + Test.Issues.Issue168 + Test.Issues.Issue184 + Test.Issues.Issue185 + Test.Issues.Issue187 + Test.Prelude + Test.Prelude.Filter + Test.Prelude.IndexSpace + Test.Prelude.Mapping + Test.Prelude.PrefixSum + Test.Prelude.Reduction + Test.Prelude.Replicate + Test.Prelude.Stencil + Test.Sharing + Test.Spectral + Test.Spectral.BlackScholes + Test.Spectral.SMVM + Test.Spectral.RadixSort + + ghc-options: -Wall -O2 + -threaded + -fpedantic-bottoms + -fno-full-laziness + -fno-excess-precision + -eventlog + -rtsopts + + ghc-prof-options: -auto-all + + extra-libraries: stdc++ + c-sources: examples/nofib/Test/IO/fill_with_values.cpp + examples/nofib/Test/Spectral/BlackScholes.cpp + + if flag(cuda) + CPP-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + other-modules: Test.Foreign + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(nofib) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-fft == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + array >= 0.3, + containers >= 0.5, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + HUnit >= 1.2, + QuickCheck >= 2.7, + test-framework >= 0.5, + test-framework-hunit >= 0.3, + test-framework-quickcheck2 >= 0.2, + random + + +-- Sparse matrix vector multiplication +-- ----------------------------------- + +Executable accelerate-smvm + hs-source-dirs: examples/smvm lib + Main-is: Main.hs + other-modules: ParseArgs Monitoring + Config + Matrix + MatrixMarket + SMVM + + ghc-options: -O2 -Wall -threaded -rtsopts -eventlog + ghc-prof-options: -auto-all + + if impl(ghc >= 7.6) + ghc-options: -fsimpl-tick-factor=130 + + if flag(cuda) + CPP-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(smvm) + buildable: False + else + build-depends: accelerate == 0.15.*, + base == 4.7.*, + attoparsec >= 0.10, + bytestring >= 0.9, + bytestring-lexing >= 0.2, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + primitive >= 0.5, + mwc-random >= 0.8, + vector >= 0.7, + vector-algorithms >= 0.4 + + +-- A quasicrystal demo as the sum of waves in a plane +-- -------------------------------------------------- + +Executable accelerate-crystal + hs-source-dirs: examples/crystal lib + Main-is: Main.hs + other-modules: Config ParseArgs Monitoring + + ghc-options: -O2 -Wall -threaded -rtsopts -eventlog + ghc-prof-options: -auto-all + + if flag(gui) + CPP-options: -DACCELERATE_ENABLE_GUI + + if flag(cuda) + CPP-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(crystal) + buildable: False + else + build-depends: accelerate == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + gloss-raster-accelerate >= 1.7 + + +-- Image edge detection +-- -------------------- + +Executable accelerate-canny + hs-source-dirs: examples/canny/src-acc lib + Main-is: Main.hs + other-modules: Config ParseArgs Canny Wildfire Monitoring + + ghc-options: -Wall + -threaded + -Odph + -fllvm + -optlo-O3 + -eventlog + -rtsopts + + ghc-prof-options: -auto-all + + if flag(cuda) + CPP-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(canny) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + repa >= 3.1, + repa-io >= 3.1, + vector >= 0.7 + + +-- A simple mandelbrot generator +-- ----------------------------- + +Executable accelerate-mandelbrot + hs-source-dirs: examples/mandelbrot lib + Main-is: Main.hs + other-modules: Config World Mandel ParseArgs Monitoring + + ghc-options: -O2 -Wall -threaded -eventlog -rtsopts + ghc-prof-options: -auto-all + + if flag(gui) + CPP-options: -DACCELERATE_ENABLE_GUI + + if flag(cuda) + CPP-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.*, + accelerate-llvm + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(llvm-cpu) && flag(llvm-gpu) && flag(llvm-multi) + CPP-options: -DACCELERATE_LLVM_MULTIDEV_BACKEND + build-depends: accelerate-llvm-multidev== 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(mandelbrot) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + gloss >= 1.7, + gloss-accelerate >= 1.7 + + +-- A stable fluid simulation +-- ------------------------- + +Executable accelerate-fluid + Main-is: Main.hs + hs-source-dirs: examples/fluid/src-acc lib + other-modules: Config ParseArgs Monitoring + Event + Fluid + Type + World + + ghc-options: -O2 -Wall -threaded -eventlog -rtsopts + ghc-prof-options: -auto-all + + if flag(gui) + CPP-options: -DACCELERATE_ENABLE_GUI + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(fluid) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + bmp >= 1.2, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + gloss >= 1.7 + + +-- Simulation of gravitational attraction between solid particles +-- -------------------------------------------------------------- + +Executable accelerate-nbody + Main-is: Main.hs + hs-source-dirs: examples/n-body lib + other-modules: Config ParseArgs Monitoring + Common.Body + Common.Dump + Common.Tree + Common.Type + Common.Util + Common.World + Gloss.Draw + Gloss.Event + Gloss.Simulate + Random.Array + Random.Position + Solver.BarnsHut + Solver.Naive1 + Solver.Naive2 + + ghc-options: -O2 -Wall -threaded -eventlog -rtsopts + ghc-prof-options: -auto-all + + if flag(gui) + cpp-options: -DACCELERATE_ENABLE_GUI + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(nbody) + buildable: False + else + build-depends: accelerate == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + gloss >= 1.7, + mwc-random >= 0.8 + + +-- A celular automata +-- ------------------ + +Executable accelerate-smoothlife + Main-is: Main.hs + hs-source-dirs: examples/smoothlife lib + other-modules: Config ParseArgs Monitoring + SmoothLife + Gloss.Draw + Gloss.Event + Gloss.Simulate + Random.Array + Random.Splat + + ghc-options: -O2 -Wall -threaded -threaded -rtsopts + ghc-prof-options: -auto-all + + if flag(gui) + cpp-options: -DACCELERATE_ENABLE_GUI + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(smoothlife) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-fft == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + gloss >= 1.7, + gloss-accelerate >= 1.7, + mwc-random >= 0.8 + + +-- A password recovery tool +-- ------------------------ + +Executable accelerate-hashcat + Main-is: Main.hs + hs-source-dirs: examples/hashcat lib + other-modules: Config ParseArgs Monitoring + Digest + MD5 + Util + + ghc-options: -O2 -Wall -threaded -threaded -rtsopts + ghc-prof-options: -auto-all + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + CPP-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if !flag(hashcat) + buildable: False + else + build-depends: accelerate == 0.15.*, + base == 4.7.*, + bytestring >= 0.9, + bytestring-lexing >= 0.2, + cereal >= 0.3, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + mwc-random >= 0.8 + +-- FFT examples +-- ------------ + +Executable accelerate-fft + Main-is: Main.hs + hs-source-dirs: examples/fft/src-acc lib + other-modules: Config + ParseArgs + HighPass + FFT + + ghc-options: -O2 -Wall -threaded -threaded -rtsopts + ghc-prof-options: -auto-all + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if !flag(fft) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-io == 0.15.*, + accelerate-fft == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 2.0, + filepath >= 1.0 + +-- PageRank +-- -------- + +Executable accelerate-pagerank + Main-is: Main.hs + hs-source-dirs: examples/pagerank lib + other-modules: Config + Page + Progress + Rank + Step + Count + Rank + Step + Load + ghc-options: -rtsopts -threaded -O2 + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda == 0.15.* + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if !flag(pagerank) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + bytestring >= 0.9.2, + containers >= 0.4.2, + criterion >= 0.5 && < 1.0, + directory >= 1.1, + fclabels >= 1.0, + vector >= 0.9, + vector-algorithms >= 0.5.4 + + +-- Ray tracer +-- ---------- + +Executable accelerate-ray + Main-is: Main.hs + hs-source-dirs: examples/ray lib + other-modules: ParseArgs Monitoring + Config + Vec3 + Gloss.Draw + Gloss.Event + Ray.Intersect + Ray.Trace + Scene.Light + Scene.Object + Scene.State + Scene.World + + if !flag(ray) + buildable: False + else + build-depends: accelerate == 0.15.*, + accelerate-io == 0.15.*, + base == 4.7.*, + criterion >= 0.5 && < 1.0, + fclabels >= 1.0, + gloss == 1.8.*, + gloss-accelerate == 1.8.*, + gloss-raster-accelerate == 1.8.* + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda >= 0.15 + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(llvm-cpu) && flag(llvm-gpu) && flag(llvm-multi) + CPP-options: -DACCELERATE_LLVM_MULTIDEV_BACKEND + build-depends: accelerate-llvm-multidev== 0.15.* + + if flag(ekg) + cpp-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + if flag(gui) + CPP-options: -DACCELERATE_ENABLE_GUI + + ghc-options: -Wall -O2 -threaded -threaded -rtsopts + ghc-prof-options: -auto-all + + +-- K-means +-- ------- + +Executable accelerate-kmeans + Main-is: Main.hs + hs-source-dirs: examples/kmeans lib + other-modules: ParseArgs Monitoring + Config + Main + Kmeans + + if !flag(kmeans) + buildable: False + else + build-depends: accelerate == 0.15.*, + base == 4.7.*, + binary >= 0.7, + criterion >= 0.5 && < 1.0, + normaldistribution, + random + + if flag(cuda) + cpp-options: -DACCELERATE_CUDA_BACKEND + build-depends: accelerate-cuda >= 0.15 + + if flag(llvm-cpu) + CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND + build-depends: accelerate-llvm-native == 0.15.* + + if flag(llvm-gpu) + CPP-options: -DACCELERATE_LLVM_PTX_BACKEND + build-depends: accelerate-llvm-ptx == 0.15.* + + if flag(ekg) + cpp-options: -DACCELERATE_ENABLE_EKG + build-depends: ekg >= 0.3 + ghc-options: -with-rtsopts=-T + + ghc-options: -Wall -O2 -threaded -threaded -rtsopts + ghc-prof-options: -auto-all + + +source-repository this + type: git + location: https://github.com/AccelerateHS/accelerate-examples + branch: release/0.15 + tag: 0.15.0.0