-fprof
コスト センターを自動的に作成するghc のオプション オプションを使用してプログラムのプロファイリングを行っています。特定のモジュールのコスト センターのみを使用すると、プロファイリングの出力が理解しやすくなります。
最初にすべてをコンパイルしてghc --make main.hs -rtsopts -prof
から、いくつかのモジュールを再コンパイルするghc -c SomeMod.hs -rtsopts -prof -fprof-auto
のが正しい解決策のように思えました。
オプションに関するGHCマニュアルから:-fprof
これらは、プログラム内のすべてのモジュールに対して一貫して使用する必要はありません。
ただし、これを行うと、再コンパイルを試みると、再コンパイル チェッカーが「フラグが変更された」ことを検出しますmain.hs
。またghc --make main.o
、どちらかの手順で作成したオブジェクトファイルから始めようと思ったのですが、うまくリンクできませんでした。
{-# OPTIONS_GHC -fprof-auto #-}
プラグマを適切なモジュールに配置することで、意図した目的が達成されることをたまたま発見しました。それは本当にそれを行う唯一の方法ですか?