プロが教える店舗&オフィスのセキュリティ対策術

こんにちは。
gprofの使用方法について伺いたいことがあります
のでよろしくお願いします。

$gcc -pg -pthread ファイル名
$./a.out
$gprof a.out gmon.out | less

上記のように実施したところ、
スレッドから呼び出される関数の時間が0.00秒となっており、測定されていないようです。
(関数内に遅延処理をいれても変わらずです)

スレッドを使用するプログラムをgprofにかける際に、
注意すべき点などを教えていただけないでしょうか。

A 回答 (2件)

Linuxなどでは、gprof でメインスレッド以外の情報を取れないことがあります。

ただし、回避方法(参考URL)はあります。

参考URL:http://sam.zoy.org/writings/programming/gprof.html
    • good
    • 0

ちょっとだけ調べた限りでは gprof はマルチスレッド(pthread)対応になっている、という記述を見つけることはできませんでしたが、少なくとも古いバージョンではマルチスレッド対応ではない、という事は分かりました。



gprof 自体、古いプログラムなのでマルチスレッド対応になっていない可能性は高いを思います。ですので、何か他のプロファイラを探して使うしか方法はないと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!