Name: accelerate-examples
Version: 1.1.0.0
Cabal-version: >=1.8
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:
README.md
data/matrices/README.md
examples/canny/README.md
examples/fluid/README.md
examples/hashcat/README.md
examples/kmeans/README.md
examples/mandelbrot/README.md
examples/pagerank/README.md
examples/ray/README.md
-- Flags that control features of the benchmark programs
--
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 codespeed
Description: Enable upload of results to benchmark server
Default: False
-- Flags that control which Accelerate backends that are linked against
--
Flag llvm-cpu
Description: Enable the LLVM backend for multicore CPUs
Default: True
Flag llvm-ptx
Description: Enable the LLVM PTX backend for NVIDIA GPUs
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 tunnel
Description: The slit-scan effect creating a Doctor Who time vortex
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
-- Test harness
-- ------------
Library
hs-source-dirs: lib
Build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, ansi-wl-pprint >= 0.6
, containers >= 0.5
, criterion >= 1.0
, directory >= 1.1
, fclabels >= 2.0
, HUnit >= 1.2
, linear >= 1.1
, mwc-random >= 0.8
, QuickCheck >= 2.7
, test-framework >= 0.5
, test-framework-hunit >= 0.3
, test-framework-quickcheck2 >= 0.2
Exposed-modules:
Data.Array.Accelerate.Examples.Internal
Other-modules:
Data.Array.Accelerate.Examples.Internal.Backend
Data.Array.Accelerate.Examples.Internal.Criterion
Data.Array.Accelerate.Examples.Internal.Criterion.Config
Data.Array.Accelerate.Examples.Internal.Interactive
Data.Array.Accelerate.Examples.Internal.Monitoring
Data.Array.Accelerate.Examples.Internal.ParseArgs
Data.Array.Accelerate.Examples.Internal.Random.Array
Data.Array.Accelerate.Examples.Internal.Report
Data.Array.Accelerate.Examples.Internal.Similar
Data.Array.Accelerate.Examples.Internal.TestFramework
Data.Array.Accelerate.Examples.Internal.TestFramework.Config
Data.Array.Accelerate.Examples.Internal.Util
ghc-options: -O2 -Wall
ghc-prof-options: -caf-all -auto-all
if flag(gui)
CPP-options: -DACCELERATE_ENABLE_GUI
-- if flag(cuda)
-- CPP-options: -DACCELERATE_CUDA_BACKEND
-- build-depends:
-- accelerate-cuda == 0.17.*
if flag(llvm-cpu)
CPP-options: -DACCELERATE_LLVM_NATIVE_BACKEND
build-depends:
accelerate-llvm-native == 1.1.*
if flag(llvm-ptx)
CPP-options: -DACCELERATE_LLVM_PTX_BACKEND
build-depends:
accelerate-llvm-ptx == 1.1.*
if flag(ekg)
CPP-options: -DACCELERATE_ENABLE_EKG
if flag(codespeed)
CPP-options: -DACCELERATE_ENABLE_CODESPEED
build-depends:
aeson >= 0.8
, bytestring >= 0.10
, HTTP >= 4000.2
, http-types >= 0.8
, network >= 2.5
, process >= 1.0
, statistics >= 0.13
, template-haskell >= 2.2
, text >= 0.11
, time >= 1.4
other-modules:
Data.Array.Accelerate.Examples.Internal.Codespeed
Data.Array.Accelerate.Examples.Internal.TH
-- 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:
examples/nofib
examples/smvm
other-modules:
Config
QuickCheck.Arbitrary.Array
QuickCheck.Arbitrary.Shape
SMVM
Test.Base
Test.FFT
Test.Foreign
Test.Imaginary
Test.Imaginary.DotP
Test.Imaginary.SASUM
Test.Imaginary.SAXPY
Test.IO
Test.IO.Ptr
Test.IO.Vector
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.Issues.Issue228
Test.Issues.Issue255
Test.Issues.Issue264
Test.Issues.Issue286
Test.Issues.Issue287
Test.Issues.Issue288
Test.Issues.Issue362
Test.Prelude
Test.Prelude.Backpermute
Test.Prelude.Filter
Test.Prelude.Fold
Test.Prelude.Map
Test.Prelude.Permute
Test.Prelude.Replicate
Test.Prelude.Scan
-- Test.Prelude.Sequences
Test.Prelude.Stencil
Test.Prelude.ZipWith
Test.Sharing
Test.Spectral
Test.Spectral.BlackScholes
Test.Spectral.RadixSort
Test.Spectral.SMVM
ghc-options:
-O2
-Wall
-threaded
-fpedantic-bottoms
-fno-excess-precision
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
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.17.*
--
-- other-modules:
-- Test.Foreign.CUDA
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(nofib)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-fft >= 1.0
, accelerate-io >= 1.0
, array >= 0.3
, containers >= 0.5
, fclabels >= 2.0
, HUnit >= 1.2
, pipes >= 4.1.6
, QuickCheck >= 2.7
, random
, test-framework >= 0.5
, test-framework-hunit >= 0.3
, test-framework-quickcheck2 >= 0.2
, vector >= 0.7
-- Sparse matrix vector multiplication
-- -----------------------------------
Executable accelerate-smvm
hs-source-dirs: examples/smvm
Main-is: Main.hs
other-modules: Config Matrix SMVM
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if impl(ghc >= 7.6)
ghc-options: -fsimpl-tick-factor=130
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(smvm)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-io >= 1.0
, fclabels >= 2.0
, matrix-market-attoparsec >= 0.1
, mwc-random >= 0.8
, scientific >= 0.3
, 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
Main-is: Main.hs
other-modules: Config
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(crystal)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, colour-accelerate >= 0.1
, fclabels >= 2.0
, gloss-raster-accelerate >= 2.0
-- The slit-scan effect creating a Doctor Who time vortex
-- ------------------------------------------------------
Executable accelerate-tunnel
hs-source-dirs: examples/tunnel
Main-is: Main.hs
other-modules: Config
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(tunnel)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, fclabels >= 2.0
, gloss-raster-accelerate >= 2.0
, lens-accelerate >= 0.1
, linear-accelerate >= 0.3
-- Image edge detection
-- --------------------
Executable accelerate-canny
hs-source-dirs: examples/canny/src-acc
Main-is: Main.hs
other-modules: Config Canny Wildfire
ghc-options:
-Wall
-threaded
-Odph
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(canny)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-io >= 1.0
, colour-accelerate >= 0.1
, 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
Main-is: Main.hs
other-modules: Config Mandel World
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(mandelbrot)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-io >= 1.0
, colour-accelerate >= 0.1
, fclabels >= 2.0
, gloss >= 1.7
, gloss-accelerate >= 2.0
-- A stable fluid simulation
-- -------------------------
Executable accelerate-fluid
Main-is: Main.hs
hs-source-dirs: examples/fluid/src-acc
other-modules: Config Event Fluid Type World
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(fluid)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-io >= 1.0
, bmp >= 1.2
, colour-accelerate >= 0.1
, fclabels >= 2.0
, gloss >= 1.9
, gloss-rendering >= 1.9
-- Simulation of gravitational attraction between solid particles
-- --------------------------------------------------------------
Executable accelerate-nbody
hs-source-dirs: examples/n-body
Main-is: Main.hs
other-modules:
Common.Body
Common.Tree
Common.Type
Common.World
Config
Gloss.Draw
Gloss.Event
Gloss.Simulate
Random.Position
Solver.BarnsHut
Solver.Naive1
Solver.Naive2
Test
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(nbody)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, fclabels >= 2.0
, gloss >= 1.7
, lens-accelerate >= 0.1
, linear-accelerate >= 0.3
, mwc-random >= 0.8
-- A celular automata
-- ------------------
Executable accelerate-smoothlife
hs-source-dirs: examples/smoothlife
Main-is: Main.hs
other-modules:
Config
Gloss.Draw
Gloss.Event
Gloss.Simulate
Random.Splat
SmoothLife
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
-- if flag(cuda)
-- cpp-options: -DACCELERATE_CUDA_BACKEND
-- build-depends:
-- accelerate-cuda == 0.17.*
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(smoothlife)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-fft >= 1.0
, colour-accelerate >= 0.1
, fclabels >= 2.0
, gloss >= 1.7
, gloss-accelerate >= 2.0
, mwc-random >= 0.8
-- A "password recovery" tool
-- --------------------------
Executable accelerate-hashcat
hs-source-dirs: examples/hashcat
Main-is: Main.hs
other-modules: Config Digest MD5
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(hashcat)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, bytestring >= 0.9
, bytestring-lexing >= 0.5
, cereal >= 0.3
, criterion >= 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
other-modules: Config HighPass FFT
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(fft)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-fft >= 1.0
, accelerate-io >= 1.0
, colour-accelerate >= 0.1
, fclabels >= 2.0
, filepath >= 1.0
-- PageRank
-- --------
Executable accelerate-pagerank
hs-source-dirs: examples/pagerank
Main-is: Main.hs
other-modules:
Config
Count
Load
Page
Progress
Rank
Step
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(pagerank)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, accelerate-io >= 1.0
, bytestring >= 0.9.2
, containers >= 0.4.2
, directory >= 1.1
, fclabels >= 1.0
, vector >= 0.9
, vector-algorithms >= 0.5.4
-- Ray tracer
-- ----------
Executable accelerate-ray
hs-source-dirs: examples/ray
Main-is: Main.hs
other-modules:
Common.Type
Config
Gloss.Draw
Gloss.Event
Ray.Intersect
Ray.Trace
Scene.Light
Scene.Object
Scene.State
Scene.World
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(ray)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, colour-accelerate >= 0.1
, fclabels >= 1.0
, gloss >= 1.8
, gloss-accelerate >= 2.0
, gloss-raster-accelerate >= 2.0
, lens-accelerate >= 0.1
, linear-accelerate >= 0.3
-- K-means
-- -------
Executable accelerate-kmeans
hs-source-dirs: examples/kmeans
Main-is: Main.hs
other-modules: Config Kmeans
ghc-options:
-Wall
-threaded
-eventlog
-rtsopts
-with-rtsopts=-n2M
-with-rtsopts=-A64M
-with-rtsopts=-qg
ghc-prof-options:
-auto-all
if flag(ekg)
ghc-options: -with-rtsopts=-T
if !flag(kmeans)
buildable: False
else
build-depends:
base >= 4.7 && < 4.11
, accelerate == 1.1.*
, accelerate-examples
, binary >= 0.7
, directory >= 1.1
, fclabels >= 1.0
, normaldistribution
, random
source-repository head
type: git
location: https://github.com/AccelerateHS/accelerate-examples
source-repository this
type: git
tag: 1.1.0.0
location: https://github.com/AccelerateHS/accelerate-examples
-- vim: nospell