data-parallel-haskell

    6热度

    1回答

    我试图做一些简单的实验与数据并行Haskell运行,但我显然有一些选择错误。甚至当我尝试像 sumP [:1.0,2.0:] 很简单,我得到一个例外 Exception indexParr: out of bounds parallel array index; idx = 0, arr len = 0 假设我有一些设置错误 - 但... 我得到同样的错误都试图当使用GHCi,以及运行GH

    33热度

    1回答

    我对Data Parallel Haskell进行了大量的研究,发现了两个独立的并行数组类型。 [::]类型似乎在研究论文中显示得更多,并且似乎是理想的类型,但是PArray似乎陷于到处。该主题的wiki页面非常清楚地表明[::]类型的数组不能传递给未向量化的代码。为什么?为什么有这种中间型PArray类型?对我来说这似乎完全是多余的。维基称它为“平面阵列”,但是矢量化的要点是平行阵列平坦。 更新

    3热度

    1回答

    我想并行合并两个列表。我有两个排序列表[(i, j, val)]。列表根据j和j排序,按i排序。如果两个列表包含相同的(i, j),则它们的值被添加并组合成一个,例如,如果第一个列表包含(i, j, val_1)并且第二个列表包含(i, j, val_2)那么组合两个将导致(i, j, val_1 + val_2)。 合并是高度顺序的,搜索后发现this paper。本文的想法是使用二进制搜索来获

    3热度

    1回答

    我正在玩一些Data Parallel Haskell代码,发现自己需要prefix sum。但是,我没有看到dph package前缀总和中的任何基本运算符。 我推出我自己的,但由于我是新来的DPH,我不知道这是否是正确采取并行的优势: {-# LANGUAGE ParallelArrays #-} {-# OPTIONS_GHC -fvectorise #-} module Prefix

    11热度

    2回答

    更具体,我有以下看似平淡无奇的小惹巴3的程序: {-# LANGUAGE QuasiQuotes #-} import Prelude hiding (map, zipWith) import System.Environment (getArgs) import Data.Word (Word8) import Data.Array.Repa import Data.Array.Re