how to use gprof in Linux?

2019-07-10 01:43发布

问题:

I have a C code in a file test.c .I have to profile it using grof.I have used the following commands to do so.

gcc -p -o result test.c
./result
gprof result

A section of the output looks as follows:

`Flat profile: Each sample counts as 0.01 seconds. no time accumulated

% cumulative self self total
time seconds seconds calls Ts/call Ts/call name`

The problem is no matter what complex or easy program I use each sample count doesn't change from 0.01 seconds.Why is that and no time is being accumulated and displayed under the various coloumns.

回答1:

You are using the wrong command-line option to gcc. -p is for a different, older profiler - for gprof, you need -pg.

If you still see no time acculmulated, it just means that your program didn't consume enough CPU time to register - gprof uses sample-based profiling, and it didn't run long enough for any samples to be taken.



标签: linux gprof