#2837: Vectoriser doesn't work with dph-seq
-----------------------------+----------------------------------------------
Reporter:  chak              |          Owner:  rl                   
    Type:  bug               |         Status:  new                  
Priority:  normal            |      Component:  Data Parallel Haskell
 Version:  6.10.1            |       Severity:  normal               
Keywords:                    |       Testcase:                       
      Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple     
-----------------------------+----------------------------------------------
 Given
 {{{
 {-# LANGUAGE PArr, ParallelListComp #-}
 {-# OPTIONS -fvectorise #-}

 module DotP (dotp_double)
 where

 import qualified Prelude
 import Data.Array.Parallel.Prelude
 import Data.Array.Parallel.Prelude.Double

 dotp_double :: [:Double:] -> [:Double:] -> Double
 dotp_double xs ys = sumP [:x * y | x <- xs | y <- ys:]
 }}}
 We can compile with `dph-par`
 {{{
 TacticalGrace chak 12 (.../haskell/ndp): ghc -c -Odph -funbox-strict-
 fields -fcpr-off -threaded -package dph-par dotp.hs
 }}}
 but not with `dph-seq`
 {{{
 TacticalGrace chak 11 (.../haskell/ndp): ghc -c -Odph -funbox-strict-
 fields -fcpr-off -threaded -package dph-seq dotp.hs
 *** Vectorisation error ***
     Variable not vectorised:
         Data.Array.Parallel.Prelude.Base.Double.sumP
 }}}

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/2837>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to