質問

X86命令の実行カウントを提供する優れたツールを知っている人はいますか?私はGCOVを見ましたが、私を助けるかもしれない他のオプションを見たいです。私の究極の目標は、この関数を呼び出して、エミュレート/プロファイリングに関心のある関数を与えることができることです。どんな提案でも大歓迎です:)ありがとう

役に立ちましたか?

解決

かなりの時間の割合を占める指示を探している場合、デバッガーの下で実行できる場合は、 これは機能します。 I/Oを引き起こしたとしても、端末命令であろうと関数の呼び出し命令であろうと、かなりの時間の原因となるコードポイントを分離します。

これを行うツールはそうです ズーム, 、Linuxを使用している場合、または ltprof Windowsでの場合。

一方、時間の測定と実行カウントを探している場合は、エミュレータ(Valgrind?)のような他の何かが必要になります。

他のヒント

Qemuは助けることができますが、この種のプロファイリングは、キャッシュ/パイプラインプロファイルを台無しにし、役に立たないようにすることができます。

AMDのコードアナリストは、命令ベースのサンプリングを使用してこれを行うことができるはずです。ただし、実行カウントの割合またはフラットな数値が得られるかどうかは覚えていません。

Linuxでそのようなプログラムをかなり簡単に平手打ちすることができます。 ptraceと組み合わせて objdump そして、いくつかのロジックは、簡単に書くことができなければなりません asm.

私はからアイデアを得ました デバッガーをコーディングする方法.

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