03.06.2011, 10:12
Hallo zusammen,
ich versuche gerade die laufzeit von meinem homebrew zu verbessern und wollte für eine analyse gprof verwenden. Wie in einigen Tutorials beschrieben, muss man mit pspgprof linken und in der main ziemlich kurz vorm ende des HB's die funktion gprof_cleanup(); aufrufen.
Zusätzlich dan compile schalter -pg und schon sollte ein gmon.out erstellt werden sobald das homebrew läuft....
Nun - das ganze klappt auch, aber es scheint keinerlei wirkliche Info gesammelt zu werden. Die gmon.out ist eta 200KB groß. Wenn ich diese nun mit psp-gprof analysiere und ein lesbares Textfile erstelle steht nur dieses bischen drin: (die kommentare habe ich mal rausgenommen):
ich versuche gerade die laufzeit von meinem homebrew zu verbessern und wollte für eine analyse gprof verwenden. Wie in einigen Tutorials beschrieben, muss man mit pspgprof linken und in der main ziemlich kurz vorm ende des HB's die funktion gprof_cleanup(); aufrufen.
Zusätzlich dan compile schalter -pg und schon sollte ein gmon.out erstellt werden sobald das homebrew läuft....
Nun - das ganze klappt auch, aber es scheint keinerlei wirkliche Info gesammelt zu werden. Die gmon.out ist eta 200KB groß. Wenn ich diese nun mit psp-gprof analysiere und ein lesbares Textfile erstelle steht nur dieses bischen drin: (die kommentare habe ich mal rausgenommen):
Code:
Flat profile:
Each sample counts as 0.001 seconds.
% cumulative self self total
time seconds seconds calls Ts/call Ts/call name
0.00 0.00 0.00 22909866 0.00 0.00 sceKernelRegisterExitCallback
Call graph
granularity: each sample hit covers 2 byte(s) no time propagated
index % time self children called name
0.00 0.00 22909866/22909866 <hicore> (2)
[1] 0.0 0.00 0.00 22909866 sceKernelRegisterExitCallback [1]
-----------------------------------------------
Index by function name
[1] sceKernelRegisterExitCallback
Nun ihr könnt euch sicher vorstellen, dass die RegisterExit-Funktion nicht die einzige ist die in meinem HB aufgerufen wirtd, und dass diese auch nicht 22909866 mal aufgerufen wurde :o)
Muss ich hier noch was im QuellCode machen ? Liegt das vielleicht daran, dass mein HB in C++ compiliert ist und aus vielen klassen und so besteht ?
Würde mich sehr über tipps/hilfe freuen....