我想將knuthBendix應用於大量的重寫規則。因此,我試着讓它在不同的平行上工作。knuthBendix算法不能通過Control.Parallel並行化?
,因爲en例子,我嘗試運行:
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
我編譯使用ghc -threaded
和我通過+RTS -N
執行。如果我並行運行其他算法,它會起作用。但對於knuthBendix來說,它並不是。
有人知道解決方案嗎?
感謝, 弗朗茨
謝謝!我想你是對的。我明天會測試它......順便說一下:與並行性有關的動詞是什麼。 (對不起,我的英文;) –
謝謝,現在它工作! (我現在已經測試過了。) –