実行するときに./MyProgram +RTS -N4
、プログラムが4つのコアで実行されていることを自動的に検出し、データセットを処理するために4つのスパークを作成するようにします。現在、このオプションを変更するたびに再コンパイルしていますが、これは面倒です。
質問する
133 次
1 に答える
2
元の質問への回答: ランタイム オプションは GHC 固有であり、GHC が提供するモジュールがあり、プログラムに渡された完全な引数リスト (+RTS
とを含む) を表示できます: 。-RTS
GHC.Environment
ここにちょっとしたデモンストレーションがあります:
import GHC.Environment (getFullArgs)
import System.Environment (getArgs)
main = do
getFullArgs >>= mapM putStrLn
putStrLn "=="
getArgs >>= mapM putStrLn
return ()
プログラムを as としてコンパイルするghc App.hs --make -rtsopts -threaded
と、実行時に次のようになります。
./App hello +RTS -N4 -RTS ook ooks
hello
+RTS
-N4
-RTS
ook
ooks
==
hello
ook
ooks
于 2012-12-12T18:22:24.817 に答える