Vectoriser should give a better error message
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
Trac metadata
| Trac field | Value |
|---|---|
| Version | 6.10.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Data Parallel Haskell |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |
Edited by Manuel M T Chakravarty