tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] First kcachegrind output


From: Vladimir Vissoultchev
Subject: Re: [Tinycc-devel] First kcachegrind output
Date: Mon, 18 Apr 2016 11:59:44 +0300

Hi,

This is a very intresting picture although I'm not sure what the numbers on
it are exactly.

Numbers in the cell must be the Include Percent (1000000ths of a %) -- time
spent in the function. Numbers besides arrows look like they are the same as
the number in the cell they point to. And then in parentheses must be the
number of calls, the arrow pointing from caller to called function?

This inspired me to use VS profiler (already posted results before) on
latest [mob] to collect perf info and here are some of the results:
https://github.com/wqweto/tinycc/wiki/profiler-functions

This table is sorted on Exclusive Samples % column (descending) which as far
as I understand represents the percentage of the execution time spent in the
body of the function w/o any time spent calling other functions. So I assume
this must be an approximate indication which is the source code that is
taking most time to execute.

Also the modules table below it seems shows that ~52% is spent on I/O
(open/read/close)

cheers,
</wqw>


From: Tinycc-devel [mailto:address@hidden
On Behalf Of Christian Jullien
Sent: Monday, April 18, 2016 9:52 AM
To: address@hidden
Subject: Re: [Tinycc-devel] First kcachegrind output

Same file but using JPG if easier to view.


From: Tinycc-devel [mailto:address@hidden
On Behalf Of Christian Jullien
Sent: lundi 18 avril 2016 08:42
To: address@hidden
Subject: [Tinycc-devel] First kcachegrind output

Hi,

I just had time to see how tcc behaves with callgrind (a valgrind tool) on
Fedora.

1) Install required tools
$ sudo dnf install graphviz valgrind kcachegrind

2) run tcc on top of callgrind and collect results.
$ valgrind --tool=callgrind ./tcc -c -I include tccgen.c

3) See results using collected results.
kcachegrind callgrind.out.4055 &

This is the tool one should consider before trying to optimize tcc.

Enclosed is a PS export but you can get much more from kcachegrind!

Christian




reply via email to

[Prev in Thread] Current Thread [Next in Thread]