C で記述された DBMS、主に postgres バイナリでいくつかのプロファイルを実行しようとしています。ユーティリティを使用して、プログラムによって行われた一連の関数呼び出しを出力できるようにしたいと考えています。簡単な例として、次のプログラムを取り上げます。
void func1 () {
printf("x\n");
}
void func2 () {
printf("y\n");
func1();
}
int main () {
func2();
func1();
return 0;
}
この「ユーティリティ」でコンパイルして実行すると、次のようになります。
-> main
-> func2
-> func1
-> func1
<-
また、ソース コードもメイクファイルも変更できませんが、-g
既に有効になっています。
過去にこれと同様のことを行うプロファイラーを使用したことは知っていますが、どのプロファイラーか思い出せません。私はいくつかのグーグルを行いましたが、ソースまたはメイクファイルを変更する必要のない適切な解決策を見つけることができませんでした.
これを達成するためにどのプロファイリング ツールを使用できますか? それとも存在しないのですか?
ありがとう。