使用Repa数组时,我应该在哪里使用'computeS'(或'computeP')函数?

时间:2017-09-12 08:54:28

标签: haskell

我在Repa数组中有一些数据,这个数组传递了很多以某种方式处理数组的函数。几乎所有函数都有Array D DIM2 a -> Array D DIM2 a类型,所以我只是将它们合成并将复合函数应用于我的初始数组。

当我这样做时,程序运行速度很慢。但是,当我在复合函数中插入computeS函数时,代码会急剧加快。我认为这不是使用修复数组的预期方法。问题可能是什么?

1 个答案:

答案 0 :(得分:0)

您的函数是否多次使用其输入数组的某些元素?在这些情况下,通常最好先运行computeS / computeP,这样它们只会被计算一次。