dph-examples: turn of specconstr and comment out currently broken examples using...
authorBen Lippmeier <benl@ouroborus.net>
Wed, 9 Nov 2011 05:27:42 +0000 (16:27 +1100)
committerBen Lippmeier <benl@ouroborus.net>
Wed, 9 Nov 2011 05:29:01 +0000 (16:29 +1100)
dph-examples/Makefile
dph-examples/dph-examples.cabal
dph-examples/dph-examples.template

index db61000..66e231d 100644 (file)
@@ -3,7 +3,7 @@
 # Package dependencies for DPH examples.
 DPH_DEPENDS_PAR = \
         base         == 4.4.*, \
-        vector       == 0.7.*, \
+        vector       == 0.9.*, \
         dph-base     == 0.5.*, \
         dph-prim-par == 0.5.*, \
         dph-par      == 0.5.*, \
@@ -12,7 +12,7 @@ DPH_DEPENDS_PAR = \
 
 DPH_DEPENDS_SEQ = \
         base         == 4.4.*, \
-        vector       == 0.7.*, \
+        vector       == 0.9.*, \
         dph-base     == 0.5.*, \
         dph-prim-seq == 0.5.*, \
         dph-seq      == 0.5.*, \
@@ -21,8 +21,8 @@ DPH_DEPENDS_SEQ = \
 
 
 # Options for compiling DPH examples.
-#      For the SEQ versions we still compile with -threaded so that we can 
-#      use the parallel garbage collector.
+#   For the SEQ versions we still compile with -threaded so that we can 
+#   use the parallel garbage collector.
 #
 DPH_OPTIONS_PAR = \
         -rtsopts \
@@ -31,8 +31,8 @@ DPH_OPTIONS_PAR = \
         -Odph \
         -fdph-par \
         -fcpr-off \
-        -fsimplifier-phases=4 \
-        -fstrictness-before=3 \
+       -fno-liberate-case \
+       -fno-spec-constr \
         -fsimpl-tick-factor=1000 
 
 DPH_OPTIONS_SEQ = \
@@ -42,8 +42,8 @@ DPH_OPTIONS_SEQ = \
         -Odph \
         -fdph-seq \
         -fcpr-off \
-        -fsimplifier-phases=4 \
-        -fstrictness-before=3 \
+       -fno-liberate-case \
+       -fno-spec-constr \
         -fsimpl-tick-factor=1000 
 
 .PHONY : all
index 13873ef..d20a3e9 100644 (file)
@@ -2,7 +2,7 @@
 
 
 Name:                dph-examples
-Version:             0.5.1.2
+Version:             0.5.2.0
 License:             BSD3
 License-file:        LICENSE
 Author:              The DPH Team
@@ -25,228 +25,154 @@ Synopsis:            Examples using Data Parallel Haskell
 
 -- Sum of Squares -------------------------------------------------------------
 Executable dph-sumsq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  SumSquaresVector
                   SumSquaresVectorised
                   Timing Randomish
   hs-source-dirs: lib imaginary/SumSquares/dph
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
-
-Executable dph-sumsq-seq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-seq == 0.5.*,
-                  dph-seq == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
-  Main-is:        Main.hs
-  other-modules:  SumSquaresVector
-                  SumSquaresVectorised
-                  Timing Randomish
-  hs-source-dirs: lib imaginary/SumSquares/dph
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+
+-- Executable dph-sumsq-seq
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  SumSquaresVector
+--                   SumSquaresVectorised
+--                   Timing Randomish
+--   hs-source-dirs: lib imaginary/SumSquares/dph
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Dot Product ----------------------------------------------------------------
 Executable dph-dotp
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  DotProductVector
                   DotProductVectorised
                   Timing Randomish
   hs-source-dirs: lib imaginary/DotProduct/dph
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
-
-Executable dph-dotp-seq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-seq == 0.5.*,
-                  dph-seq == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
-  Main-is:        Main.hs
-  other-modules:  DotProductVector
-                  DotProductVectorised
-                  Timing Randomish
-  hs-source-dirs: lib imaginary/DotProduct/dph
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+
+-- Executable dph-dotp-seq
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  DotProductVector
+--                   DotProductVectorised
+--                   Timing Randomish
+--   hs-source-dirs: lib imaginary/DotProduct/dph
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Evens ----------------------------------------------------------------------
 Executable dph-evens
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  EvensVector
                   EvensVectorised
                   Timing Randomish
   hs-source-dirs: imaginary/Evens/dph lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
-
-Executable dph-evens-seq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-seq == 0.5.*,
-                  dph-seq == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
-  Main-is:        Main.hs
-  other-modules:  EvensVector
-                  EvensVectorised
-                  Timing Randomish
-  hs-source-dirs: imaginary/Evens/dph lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+
+-- Executable dph-evens-seq
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  EvensVector
+--                   EvensVectorised
+--                   Timing Randomish
+--   hs-source-dirs: imaginary/Evens/dph lib
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Primes ---------------------------------------------------------------------
 -- Primes dies with a bounds check error
--- Executable dph-primes
---  Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
---  Main-is:        Main.hs
---  hs-source-dirs: imaginary/Primes lib
---  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+Executable dph-primes
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
+  Main-is:        Main.hs
+  hs-source-dirs: imaginary/Primes lib
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 -- Executable dph-primes-seq
---  Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
---  Main-is:        Main.hs
---  hs-source-dirs: imaginary/Primes lib
---  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   hs-source-dirs: imaginary/Primes lib
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Reverse --------------------------------------------------------------------
 Executable dph-reverse
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  ReverseVector
                   ReverseVectorised
                   Util Timing Randomish
   hs-source-dirs: imaginary/Reverse/dph lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
-Executable dph-reverse-seq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-seq == 0.5.*,
-                  dph-seq == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
-  Main-is:        Main.hs
-  other-modules:  ReverseVector
-                  ReverseVectorised
-                  Util Timing Randomish
-  hs-source-dirs: imaginary/Reverse/dph lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+-- Executable dph-reverse-seq
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  ReverseVector
+--                   ReverseVectorised
+--                   Util Timing Randomish
+--   hs-source-dirs: imaginary/Reverse/dph lib
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Words ---------------------------------------------------------------------
--- This builds and runs, but takes ~5min. 
--- Executable dph-words
---  Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
---  Main-is:        Main.hs
---  hs-source-dirs: imaginary/Words lib
---  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3 -fno-liberate-case
+Executable dph-words
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
+  Main-is:        Main.hs
+  hs-source-dirs: imaginary/Words lib
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
--- This one also stalls in SpecConstr, like quicksort-seq
 -- Executable dph-words-seq
---   Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
 --   Main-is:        Main.hs
 --   hs-source-dirs: imaginary/Words lib
---   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- SMVM ---------------------------------------------------------------------
 Executable dph-smvm
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  SMVMVectorised
                   Timing
   hs-source-dirs: spectral/SMVM/dph lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
-
-Executable dph-smvm-seq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-seq == 0.5.*,
-                  dph-seq == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
-  Main-is:        Main.hs
-  other-modules:  SMVMVectorised
-                  Timing
-  hs-source-dirs: spectral/SMVM/dph lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+
+-- Executable dph-smvm-seq
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  SMVMVectorised
+--                   Timing
+--   hs-source-dirs: spectral/SMVM/dph lib
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 
 -- QuickHull ------------------------------------------------------------------
 Executable dph-quickhull
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
-  Main-is:        Main.hs
-  other-modules:  QuickHullVect
-                  Timing Points2D.Types SVG
-  hs-source-dirs: lib spectral/QuickHull/dph spectral/QuickHull/lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
-
-Executable dph-quickhull-seq
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-seq == 0.5.*,
-                  dph-seq == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  QuickHullVect
                   Timing Points2D.Types SVG
   hs-source-dirs: lib spectral/QuickHull/dph spectral/QuickHull/lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+
+-- Executable dph-quickhull-seq
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  QuickHullVect
+--                   Timing Points2D.Types SVG
+--   hs-source-dirs: lib spectral/QuickHull/dph spectral/QuickHull/lib
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 Executable dph-quickhull-vector
   Build-depends: 
         base          == 4.*,
-        vector        >= 0.7 && < 0.9,    
+        vector        == 0.9.*,    
         old-time      == 1.0.*,
         random        == 1.0.*
   Main-is:        Main.hs
@@ -255,55 +181,40 @@ Executable dph-quickhull-vector
                   QuickHullVector
                   Timing Points2D.Types SVG
   hs-source-dirs: lib spectral/QuickHull/vector spectral/QuickHull/lib
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- QuickSort ------------------------------------------------------------------
 Executable dph-quicksort
-  Build-depends:  base == 4.4.*,
-                  vector >= 0.7 && < 0.9,
-                  dph-base == 0.5.*,
-                  dph-prim-par == 0.5.*,
-                  dph-par == 0.5.*,
-                  random == 1.0.*,
-                  old-time == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*
   Main-is:        Main.hs
   other-modules:  QuickSortVect
                   Timing
   hs-source-dirs: lib spectral/QuickSort/dph
-  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
--- This one stalls in SpecConstr then eventually runs out of memory.
 -- Executable dph-quicksort-seq
---  Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
---  Main-is:        Main.hs
---  other-modules:  QuickSortVect
---                  Timing
---  hs-source-dirs: lib spectral/QuickSort/dph
---  ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+--   Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*
+--   Main-is:        Main.hs
+--   other-modules:  QuickSortVect
+--                   Timing
+--   hs-source-dirs: lib spectral/QuickSort/dph
+--   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- NBody ----------------------------------------------------------------------
-Executable dph-nbody-gloss
-    Main-is:        MainGloss.hs
-    other-modules:  Common.Dump Common.World Common.Body Common.Util 
-                    Solver Solver.ListBH.Solver
-                           Solver.NestedBH.Solver
-                           Solver.VectorBH.Solver
-                           Solver.VectorNaive.Solver
-                    Timing Points2D.Types Points2D.Generate
-                    Gloss.MainArgs Gloss.Draw Gloss.Config
-    Build-depends:  base == 4.4.*,
-                    vector >= 0.7 && < 0.9,
-                    dph-base == 0.5.*,
-                    dph-prim-par == 0.5.*,
-                    dph-par == 0.5.*,
-                    random == 1.0.*,
-                    old-time == 1.0.*,
-                    parseargs == 0.1.*,
-                    gloss == 1.3.*
-    hs-source-dirs: lib real/NBody real/NBody/Gloss
-    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3 -fno-liberate-case
+-- Executable dph-nbody-gloss
+--     Main-is:        MainGloss.hs
+--     other-modules:  Common.Dump Common.World Common.Body Common.Util 
+--                     Solver Solver.ListBH.Solver
+--                            Solver.NestedBH.Solver
+--                            Solver.VectorBH.Solver
+--                            Solver.VectorNaive.Solver
+--                     Timing Points2D.Types Points2D.Generate
+--                     Gloss.MainArgs Gloss.Draw Gloss.Config
+--     Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*, parseargs == 0.1.*, gloss == 1.3.*
+--     hs-source-dirs: lib real/NBody real/NBody/Gloss
+--     ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000 -fno-liberate-case
 
 
 Executable dph-nbody-batch
@@ -315,25 +226,18 @@ Executable dph-nbody-batch
                            Solver.VectorNaive.Solver
                     Timing Points2D.Types Points2D.Generate
                     Batch.MainArgs Batch.Config
-    Build-depends:  base == 4.4.*,
-                    vector >= 0.7 && < 0.9,
-                    dph-base == 0.5.*,
-                    dph-prim-par == 0.5.*,
-                    dph-par == 0.5.*,
-                    random == 1.0.*,
-                    old-time == 1.0.*,
-                    parseargs == 0.1.*
+    Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-par == 0.5.*, random == 1.0.*, old-time == 1.0.*, parseargs == 0.1.*
     hs-source-dirs: lib real/NBody real/NBody/Batch
-    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3 -fno-liberate-case
+    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-par -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000 -fno-liberate-case
 
 -- Executable dph-nbody-seq
 --  Main-is:        Main.hs
 --  if flag(gloss)
---    Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*, parseargs == 0.1.*, gloss == 1.3.*
+--    Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*, parseargs == 0.1.*, gloss == 1.3.*
 --    hs-source-dirs: lib real/NBody real/NBody/Gloss
---    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+--    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 --  else
---    Build-depends:  base == 4.4.*, vector >= 0.7 && < 0.9, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*, parseargs == 0.1.*
+--    Build-depends:  base == 4.4.*, vector == 0.9.*, dph-base == 0.5.*, dph-prim-seq == 0.5.*, dph-seq == 0.5.*, random == 1.0.*, old-time == 1.0.*, parseargs == 0.1.*
 --    hs-source-dirs: lib real/NBody real/NBody/Batch
---    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fsimplifier-phases=4 -fstrictness-before=3
+--    ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 --  endif
index 5f1cf7e..efe18da 100644 (file)
@@ -1,6 +1,6 @@
 
 Name:                dph-examples
-Version:             0.5.1.2
+Version:             0.5.2.0
 License:             BSD3
 License-file:        LICENSE
 Author:              The DPH Team
@@ -31,14 +31,14 @@ Executable dph-sumsq
   hs-source-dirs: lib imaginary/SumSquares/dph
   ghc-options:    DPH_OPTIONS_PAR
 
-Executable dph-sumsq-seq
-  Build-depends:  DPH_DEPENDS_SEQ
-  Main-is:        Main.hs
-  other-modules:  SumSquaresVector
-                  SumSquaresVectorised
-                  Timing Randomish
-  hs-source-dirs: lib imaginary/SumSquares/dph
-  ghc-options:    DPH_OPTIONS_SEQ
+-- Executable dph-sumsq-seq
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  SumSquaresVector
+--                   SumSquaresVectorised
+--                   Timing Randomish
+--   hs-source-dirs: lib imaginary/SumSquares/dph
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 -- Dot Product ----------------------------------------------------------------
@@ -51,14 +51,14 @@ Executable dph-dotp
   hs-source-dirs: lib imaginary/DotProduct/dph
   ghc-options:    DPH_OPTIONS_PAR
 
-Executable dph-dotp-seq
-  Build-depends:  DPH_DEPENDS_SEQ
-  Main-is:        Main.hs
-  other-modules:  DotProductVector
-                  DotProductVectorised
-                  Timing Randomish
-  hs-source-dirs: lib imaginary/DotProduct/dph
-  ghc-options:    DPH_OPTIONS_SEQ
+-- Executable dph-dotp-seq
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  DotProductVector
+--                   DotProductVectorised
+--                   Timing Randomish
+--   hs-source-dirs: lib imaginary/DotProduct/dph
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 -- Evens ----------------------------------------------------------------------
@@ -71,29 +71,29 @@ Executable dph-evens
   hs-source-dirs: imaginary/Evens/dph lib
   ghc-options:    DPH_OPTIONS_PAR
 
-Executable dph-evens-seq
-  Build-depends:  DPH_DEPENDS_SEQ
-  Main-is:        Main.hs
-  other-modules:  EvensVector
-                  EvensVectorised
-                  Timing Randomish
-  hs-source-dirs: imaginary/Evens/dph lib
-  ghc-options:    DPH_OPTIONS_SEQ
+-- Executable dph-evens-seq
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  EvensVector
+--                   EvensVectorised
+--                   Timing Randomish
+--   hs-source-dirs: imaginary/Evens/dph lib
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 -- Primes ---------------------------------------------------------------------
 -- Primes dies with a bounds check error
--- Executable dph-primes
---  Build-depends:  DPH_DEPENDS_PAR
---  Main-is:        Main.hs
---  hs-source-dirs: imaginary/Primes lib
---  ghc-options:    DPH_OPTIONS_PAR
+Executable dph-primes
+  Build-depends:  DPH_DEPENDS_PAR
+  Main-is:        Main.hs
+  hs-source-dirs: imaginary/Primes lib
+  ghc-options:    DPH_OPTIONS_PAR
 
 -- Executable dph-primes-seq
---  Build-depends:  DPH_DEPENDS_SEQ
---  Main-is:        Main.hs
---  hs-source-dirs: imaginary/Primes lib
---  ghc-options:    DPH_OPTIONS_SEQ
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   hs-source-dirs: imaginary/Primes lib
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 -- Reverse --------------------------------------------------------------------
@@ -107,25 +107,23 @@ Executable dph-reverse
   ghc-options:    DPH_OPTIONS_PAR
 
 
-Executable dph-reverse-seq
-  Build-depends:  DPH_DEPENDS_SEQ
-  Main-is:        Main.hs
-  other-modules:  ReverseVector
-                  ReverseVectorised
-                  Util Timing Randomish
-  hs-source-dirs: imaginary/Reverse/dph lib
-  ghc-options:    DPH_OPTIONS_SEQ
+-- Executable dph-reverse-seq
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  ReverseVector
+--                   ReverseVectorised
+--                   Util Timing Randomish
+--   hs-source-dirs: imaginary/Reverse/dph lib
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 -- Words ---------------------------------------------------------------------
--- This builds and runs, but takes ~5min. 
--- Executable dph-words
---  Build-depends:  DPH_DEPENDS_PAR
---  Main-is:        Main.hs
---  hs-source-dirs: imaginary/Words lib
---  ghc-options:    DPH_OPTIONS_PAR -fno-liberate-case
+Executable dph-words
+  Build-depends:  DPH_DEPENDS_PAR
+  Main-is:        Main.hs
+  hs-source-dirs: imaginary/Words lib
+  ghc-options:    DPH_OPTIONS_PAR
 
--- This one also stalls in SpecConstr, like quicksort-seq
 -- Executable dph-words-seq
 --   Build-depends:  DPH_DEPENDS_SEQ
 --   Main-is:        Main.hs
@@ -142,13 +140,13 @@ Executable dph-smvm
   hs-source-dirs: spectral/SMVM/dph lib
   ghc-options:    DPH_OPTIONS_PAR
 
-Executable dph-smvm-seq
-  Build-depends:  DPH_DEPENDS_SEQ
-  Main-is:        Main.hs
-  other-modules:  SMVMVectorised
-                  Timing
-  hs-source-dirs: spectral/SMVM/dph lib
-  ghc-options:    DPH_OPTIONS_SEQ
+-- Executable dph-smvm-seq
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  SMVMVectorised
+--                   Timing
+--   hs-source-dirs: spectral/SMVM/dph lib
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 
@@ -161,18 +159,18 @@ Executable dph-quickhull
   hs-source-dirs: lib spectral/QuickHull/dph spectral/QuickHull/lib
   ghc-options:    DPH_OPTIONS_PAR
 
-Executable dph-quickhull-seq
-  Build-depends:  DPH_DEPENDS_SEQ
-  Main-is:        Main.hs
-  other-modules:  QuickHullVect
-                  Timing Points2D.Types SVG
-  hs-source-dirs: lib spectral/QuickHull/dph spectral/QuickHull/lib
-  ghc-options:    DPH_OPTIONS_SEQ
+-- Executable dph-quickhull-seq
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  QuickHullVect
+--                   Timing Points2D.Types SVG
+--   hs-source-dirs: lib spectral/QuickHull/dph spectral/QuickHull/lib
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 Executable dph-quickhull-vector
   Build-depends: 
         base          == 4.*,
-        vector        == 0.7.*,    
+        vector        == 0.9.*,    
         old-time      == 1.0.*,
         random        == 1.0.*
   Main-is:        Main.hs
@@ -193,29 +191,28 @@ Executable dph-quicksort
   hs-source-dirs: lib spectral/QuickSort/dph
   ghc-options:    DPH_OPTIONS_PAR
 
--- This one stalls in SpecConstr then eventually runs out of memory.
 -- Executable dph-quicksort-seq
---  Build-depends:  DPH_DEPENDS_SEQ
---  Main-is:        Main.hs
---  other-modules:  QuickSortVect
---                  Timing
---  hs-source-dirs: lib spectral/QuickSort/dph
---  ghc-options:    DPH_OPTIONS_SEQ
+--   Build-depends:  DPH_DEPENDS_SEQ
+--   Main-is:        Main.hs
+--   other-modules:  QuickSortVect
+--                   Timing
+--   hs-source-dirs: lib spectral/QuickSort/dph
+--   ghc-options:    DPH_OPTIONS_SEQ
 
 
 -- NBody ----------------------------------------------------------------------
-Executable dph-nbody-gloss
-    Main-is:        MainGloss.hs
-    other-modules:  Common.Dump Common.World Common.Body Common.Util 
-                    Solver Solver.ListBH.Solver
-                           Solver.NestedBH.Solver
-                           Solver.VectorBH.Solver
-                           Solver.VectorNaive.Solver
-                    Timing Points2D.Types Points2D.Generate
-                    Gloss.MainArgs Gloss.Draw Gloss.Config
-    Build-depends:  DPH_DEPENDS_PAR, parseargs == 0.1.*, gloss == 1.3.*
-    hs-source-dirs: lib real/NBody real/NBody/Gloss
-    ghc-options:    DPH_OPTIONS_PAR -fno-liberate-case
+-- Executable dph-nbody-gloss
+--     Main-is:        MainGloss.hs
+--     other-modules:  Common.Dump Common.World Common.Body Common.Util 
+--                     Solver Solver.ListBH.Solver
+--                            Solver.NestedBH.Solver
+--                            Solver.VectorBH.Solver
+--                            Solver.VectorNaive.Solver
+--                     Timing Points2D.Types Points2D.Generate
+--                     Gloss.MainArgs Gloss.Draw Gloss.Config
+--     Build-depends:  DPH_DEPENDS_PAR, parseargs == 0.1.*, gloss == 1.3.*
+--     hs-source-dirs: lib real/NBody real/NBody/Gloss
+--     ghc-options:    DPH_OPTIONS_PAR -fno-liberate-case
 
 
 Executable dph-nbody-batch