質問

私は自分のアプリケーション内の各スレッドがcallgrindを使用する方法を「高価」を参照できるようにしたいと思います。私はあなたに、その後、全体のアプリとスレッドごとの1のためのcallgrindファイルを与える--separate-thread=yesオプションでプロファイル。

このは、任意のスレッドのプロフィールを閲覧するのに便利ですが、私はスレッドが最大の豚である見ることができるように、私が本当にしたいことは、各スレッドからCPU時間のちょうどソートされたリストです。

役に立ちましたか?

解決

Valgrindの/ Callgrindは、この動作を許可していません。どちらkcachegrindはありませんが、私はそれが良いの改善になると思います。たぶん、いくつかの答えは自分のメーリングリスト上で見つけることができます。

作業のが、本当に退屈の方法は、使用オプション--separate-thread=noになり、各スレッドの別のの関数名やクラス名の使用するようにコードを更新することができます。あなたのコードの複雑さをによって、それが答えかもしれない()1computeData()、2computeDataを(使用して、...)

他のヒント

を同時にkcachegrind中だけオープン複数のプロファイルます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top