我正在尝试将knuthBendix应用于大量的重写规则.因此,我尝试让它在不同的集合上并行工作.
例如,我尝试运行:
import Control.Parallel
import Control.Parallel.Strategies
import Math.Algebra.Group.StringRewriting
knuthBendixOptimized rs = as' `par` bs' `pseq` as' ++ bs' where
(as, bs) = splitAt 3000 rs
as' = knuthBendix as
bs' = knuthBendix bs
Run Code Online (Sandbox Code Playgroud)
我编译使用ghc -threaded,我执行通过+RTS -N.如果我并行运行其他算法,它就可以工作.但对于knuthBendix,它没有.
有人知道解决方案吗?
谢谢,弗兰兹