dph-examples: dump rules to compile examples in seq way
authorBen Lippmeier <benl@ouroborus.net>
Fri, 11 Nov 2011 03:54:08 +0000 (14:54 +1100)
committerBen Lippmeier <benl@ouroborus.net>
Fri, 11 Nov 2011 03:54:08 +0000 (14:54 +1100)
dph-examples/Makefile
dph-examples/dph-examples.cabal
dph-examples/dph-examples.template
dph-lifted-boxed/dph-lifted-boxed.cabal
dph-lifted-vseg/Data/Array/Parallel/PArray.hs
dph-lifted-vseg/dph-lifted-vseg.cabal

index cac3c42..0a3967c 100644 (file)
@@ -1,30 +1,18 @@
 # Makes the dph-examples.cabal file from its template.
 
 # Package dependencies for DPH examples.
-DPH_DEPENDS_PAR = \
-        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.*
-
-DPH_DEPENDS_SEQ = \
-        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.*
+DPH_DEPENDS = \
+        base           == 4.4.*, \
+        vector         == 0.9.*, \
+        random         == 1.0.*, \
+        old-time       == 1.0.*, \
+        dph-base       == 0.5.*, \
+        dph-prim-par   == 0.5.*, \
+        dph-lifted-vseg        == 0.5.*
 
 
 # Options for compiling DPH examples.
-#   For the SEQ versions we still compile with -threaded so that we can 
-#   use the parallel garbage collector.
-#
-DPH_OPTIONS_PAR = \
+DPH_OPTIONS= \
         -rtsopts \
         -threaded \
        -fllvm \
@@ -35,29 +23,18 @@ DPH_OPTIONS_PAR = \
        -fno-spec-constr \
         -fsimpl-tick-factor=1000 
 
-DPH_OPTIONS_SEQ = \
-        -rtsopts \
-       -threaded \
-       -fllvm \
-        -Odph \
-        -package dph-seq \
-        -fcpr-off \
-       -fno-liberate-case \
-       -fno-spec-constr \
-        -fsimpl-tick-factor=1000 
 
 .PHONY : all
 all : dph-examples.cabal
        cabal configure --user
        cabal build
 
+
 # Make the cabal file from the tempalate by substituting in the above config.
 dph-examples.cabal : dph-examples.template Makefile
        @echo "* Making dph-examples.cabal"
        @cpp    -P -undef \
-               -DDPH_DEPENDS_PAR="$(DPH_DEPENDS_PAR)" \
-               -DDPH_DEPENDS_SEQ="$(DPH_DEPENDS_SEQ)" \
-               -DDPH_OPTIONS_PAR="$(DPH_OPTIONS_PAR)" \
-               -DDPH_OPTIONS_SEQ="$(DPH_OPTIONS_SEQ)" \
+               -DDPH_DEPENDS="$(DPH_DEPENDS)" \
+               -DDPH_OPTIONS="$(DPH_OPTIONS)" \
                dph-examples.template dph-examples.cabal 
        
\ No newline at end of file
index d20a3e9..5cfd4b1 100644 (file)
@@ -25,181 +25,104 @@ Synopsis:            Examples using Data Parallel Haskell
 
 -- Sum of Squares -------------------------------------------------------------
 Executable dph-sumsq
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -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
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Dot Product ----------------------------------------------------------------
 Executable dph-dotp
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -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
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Evens ----------------------------------------------------------------------
 Executable dph-evens
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -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
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -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.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.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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.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
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Reverse --------------------------------------------------------------------
 Executable dph-reverse
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
-
-
--- 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
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- Words ---------------------------------------------------------------------
 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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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
-
--- Executable dph-words-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
---   hs-source-dirs: imaginary/Words lib
---   ghc-options:    -rtsopts -threaded -fllvm -Odph -fdph-seq -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- SMVM ---------------------------------------------------------------------
 Executable dph-smvm
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -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
-
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- QuickHull ------------------------------------------------------------------
 Executable dph-quickhull
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -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.9.*,    
-        old-time      == 1.0.*,
-        random        == 1.0.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   Main-is:        Main.hs
   other-modules:  QuickHullIO
                   QuickHullSplit
                   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 -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- QuickSort ------------------------------------------------------------------
 Executable dph-quicksort
-  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.*
+  Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*
   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 -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
-
--- Executable dph-quicksort-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:  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
+  ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
 
 
 -- NBody ----------------------------------------------------------------------
@@ -212,9 +135,9 @@ Executable dph-quicksort
 --                            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.*
+--     Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*, 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
+--     ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000 -fno-liberate-case
 
 
 Executable dph-nbody-batch
@@ -226,18 +149,7 @@ Executable dph-nbody-batch
                            Solver.VectorNaive.Solver
                     Timing Points2D.Types Points2D.Generate
                     Batch.MainArgs Batch.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.*
+    Build-depends:  base == 4.4.*, vector == 0.9.*, random == 1.0.*, old-time == 1.0.*, dph-base == 0.5.*, dph-prim-par == 0.5.*, dph-lifted-vseg == 0.5.*, parseargs == 0.1.*
     hs-source-dirs: lib real/NBody real/NBody/Batch
-    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.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 -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
---  else
---    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 -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000
---  endif
+    ghc-options:    -rtsopts -threaded -fllvm -Odph -package dph-lifted-vseg -fcpr-off -fno-liberate-case -fno-spec-constr -fsimpl-tick-factor=1000 -fno-liberate-case
+
index efe18da..c814d0e 100644 (file)
@@ -23,181 +23,104 @@ Synopsis:            Examples using Data Parallel Haskell
 
 -- Sum of Squares -------------------------------------------------------------
 Executable dph-sumsq
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  SumSquaresVector
                   SumSquaresVectorised
                   Timing Randomish
   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
+  ghc-options:    DPH_OPTIONS
 
 
 -- Dot Product ----------------------------------------------------------------
 Executable dph-dotp
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  DotProductVector
                   DotProductVectorised
                   Timing Randomish
   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
+  ghc-options:    DPH_OPTIONS
 
 
 -- Evens ----------------------------------------------------------------------
 Executable dph-evens
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  EvensVector
                   EvensVectorised
                   Timing Randomish
   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
+  ghc-options:    DPH_OPTIONS
 
 
 -- Primes ---------------------------------------------------------------------
 -- Primes dies with a bounds check error
 Executable dph-primes
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   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
+  ghc-options:    DPH_OPTIONS
 
 
 -- Reverse --------------------------------------------------------------------
 Executable dph-reverse
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  ReverseVector
                   ReverseVectorised
                   Util Timing Randomish
   hs-source-dirs: imaginary/Reverse/dph lib
-  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
+  ghc-options:    DPH_OPTIONS
 
 
 -- Words ---------------------------------------------------------------------
 Executable dph-words
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   hs-source-dirs: imaginary/Words lib
-  ghc-options:    DPH_OPTIONS_PAR
-
--- Executable dph-words-seq
---   Build-depends:  DPH_DEPENDS_SEQ
---   Main-is:        Main.hs
---   hs-source-dirs: imaginary/Words lib
---   ghc-options:    DPH_OPTIONS_SEQ
+  ghc-options:    DPH_OPTIONS
 
 
 -- SMVM ---------------------------------------------------------------------
 Executable dph-smvm
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  SMVMVectorised
                   Timing
   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
-
+  ghc-options:    DPH_OPTIONS
 
 
 -- QuickHull ------------------------------------------------------------------
 Executable dph-quickhull
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   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_PAR
+  ghc-options:    DPH_OPTIONS
 
--- 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.9.*,    
-        old-time      == 1.0.*,
-        random        == 1.0.*
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  QuickHullIO
                   QuickHullSplit
                   QuickHullVector
                   Timing Points2D.Types SVG
   hs-source-dirs: lib spectral/QuickHull/vector spectral/QuickHull/lib
-  ghc-options:    DPH_OPTIONS_PAR
+  ghc-options:    DPH_OPTIONS
 
 
 -- QuickSort ------------------------------------------------------------------
 Executable dph-quicksort
-  Build-depends:  DPH_DEPENDS_PAR
+  Build-depends:  DPH_DEPENDS
   Main-is:        Main.hs
   other-modules:  QuickSortVect
                   Timing
   hs-source-dirs: lib spectral/QuickSort/dph
-  ghc-options:    DPH_OPTIONS_PAR
-
--- 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
+  ghc-options:    DPH_OPTIONS
 
 
 -- NBody ----------------------------------------------------------------------
@@ -210,9 +133,9 @@ Executable dph-quicksort
 --                            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.*
+--     Build-depends:  DPH_DEPENDS, parseargs == 0.1.*, gloss == 1.3.*
 --     hs-source-dirs: lib real/NBody real/NBody/Gloss
---     ghc-options:    DPH_OPTIONS_PAR -fno-liberate-case
+--     ghc-options:    DPH_OPTIONS -fno-liberate-case
 
 
 Executable dph-nbody-batch
@@ -224,18 +147,7 @@ Executable dph-nbody-batch
                            Solver.VectorNaive.Solver
                     Timing Points2D.Types Points2D.Generate
                     Batch.MainArgs Batch.Config
-    Build-depends:  DPH_DEPENDS_PAR, parseargs == 0.1.*
+    Build-depends:  DPH_DEPENDS, parseargs == 0.1.*
     hs-source-dirs: lib real/NBody real/NBody/Batch
-    ghc-options:    DPH_OPTIONS_PAR -fno-liberate-case
-
--- Executable dph-nbody-seq
---  Main-is:        Main.hs
---  if flag(gloss)
---    Build-depends:  DPH_DEPENDS_SEQ, parseargs == 0.1.*, gloss == 1.3.*
---    hs-source-dirs: lib real/NBody real/NBody/Gloss
---    ghc-options:    DPH_OPTIONS_SEQ
---  else
---    Build-depends:  DPH_DEPENDS_SEQ, parseargs == 0.1.*
---    hs-source-dirs: lib real/NBody real/NBody/Batch
---    ghc-options:    DPH_OPTIONS_SEQ
---  endif
+    ghc-options:    DPH_OPTIONS -fno-liberate-case
+
index 4a1c7d1..e1322a9 100644 (file)
@@ -12,11 +12,6 @@ Cabal-Version:  >= 1.6
 Build-Type:     Simple
 
 Library
-  -- This Cabal file is CPPed,
-  --   then put in ../build/dph-lifted-copy-par and ../build/dph-lifted-copy-seq
-  -- We therefore need to point back at the original location for where to find the sources
-  HS-Source-Dirs: ../dph-lifted-boxed
-
   Exposed-Modules:
         Data.Array.Parallel.PArray
 
index ccc9bff..747a3aa 100644 (file)
@@ -33,7 +33,7 @@ module Data.Array.Parallel.PArray
         , append,       appendl
         , concat,       concatl
         , unconcat
-        , nestUSegd
+        , nestSegd
 
         -- * Projections
         , length,       lengthl         -- length from D.A.P.PArray.PData.Base
index a8497a0..b66cd15 100644 (file)
@@ -1,4 +1,4 @@
-Name:           dph-DPHWAY
+Name:           dph-lifted-vseg
 Version:        0.5.2.0
 License:        BSD3
 License-File:   LICENSE
@@ -12,14 +12,6 @@ Cabal-Version:  >= 1.6
 Build-Type:     Simple
 
 Library
-  -- This Cabal file is CPPed,
-  --   then put in ../build/dph-lifted-copy-par and ../build/dph-lifted-copy-seq
-  -- We therefore need to point back at the original location for where to find the sources
-  HS-Source-Dirs: ../dph-lifted-vseg
-
-  Include-Dirs:
-        include
-
   Exposed-Modules:
         Data.Array.Parallel.Lifted.Closure
         Data.Array.Parallel.Lifted.Combinators
@@ -89,17 +81,14 @@ Library
         -fno-warn-orphans
 
   Build-Depends:  
-        base             == 4.4.*,
-        ghc              == 7.*,
-        array            == 0.3.*,
-        random           == 1.0.*,
-        template-haskell == 2.6.*,
-        dph-base         == 0.5.*,
-        dph-prim-DPHWAY  == 0.5.*,
-        dph-lifted-reference == 0.5.*,
-        vector           == 0.9.*,
-        pretty           == 1.1.*,
-        containers       == 0.4.*
-
-  GHC-Options: -package-name dph-DPHWAY
-
+        base                    == 4.4.*,
+        ghc                     == 7.*,
+        array                   == 0.3.*,
+        random                  == 1.0.*,
+        template-haskell        == 2.6.*,
+        dph-base                == 0.5.*,
+        dph-prim-par            == 0.5.*,
+        dph-lifted-boxed        == 0.5.*,
+        vector                  == 0.9.*,
+        pretty                  == 1.1.*,
+        containers              == 0.4.*