QProf Code
QProf is the visual tool for profiling text information.
Status: Beta
Brought to you by:
karbofos
| File | Date | Author | Commit |
|---|---|---|---|
| cmake | 2012-08-14 |
|
[e2c407] cppcheck.sh additional |
| doc | 2012-07-03 |
|
[122261] first release |
| sources | 2012-11-27 |
|
[ebdcda] astyled |
| AUTHORS | 2012-07-03 |
|
[122261] first release |
| CMakeLists.txt | 2012-11-27 |
|
[ebdcda] astyled |
| COPYING | 2012-07-03 |
|
[122261] first release |
| ChangeLog | 2012-07-03 |
|
[122261] first release |
| INSTALL | 2012-07-03 |
|
[122261] first release |
| README | 2012-07-03 |
|
[acbb2a] changes in text information |
| TODO | 2012-07-03 |
|
[122261] first release |
| VERSION | 2012-11-27 |
|
[ebdcda] astyled |
| astyle.sh | 2012-11-27 |
|
[40e556] astyled |
| cleanProject.sh | 2012-08-06 |
|
[80d2b4] remastereed handling of file list |
| cppcheck.sh | 2012-08-14 |
|
[41e08a] CmakeLists.txt changed: autodetection of cpus: ... |
QProf 0.9.0 README file
Release date: July 3rd, 2012.
SUMMARY
-------
QProf is a tool for developers. It lets you examine the
output of code profilers to help you understand where the
bottlenecks and slowdowns are in your code.
QProf is the Kprof based project. This was ported from Qt3/KDE
source code to Qt4 version of software.
The original KProf project you can see under
http://kprof.sourceforge.net/
QProf supports analysis of the output generated by the
following profilers:
- GNU gprof, available on most UNIX systems
- Function Check, a recent and better profiler available
from http://sourceforge.net/projects/fnccheck
- Palm OS Emulator, a tool from Palm which lets emulates
a PalmOS device and can profile the execution of the
application running in the emulator. This will be deprecated
INSTALLING QPROF
----------------
For the call graph functionality you need to install GraphViz.
Get GraphViz at http://www.graphviz.org or from your repository.
To install QProf, simply do:
$ cmake .
$ make
$ make install
You must be root to do the 'make install'.
USING KPROF
-----------
Here are the possible ways to use QProf:
- RECOMMENDED: A binary program. In this case, QProf will try
to locate a file named `gmon.out' in the same directory.
This file is generated automatically when a program compiled with
profiling turned on is executed. If 'gmon.out' is not found,
QProf will try to find 'fnccheck.out', the binary
profiling output generated when running a program with
Function Check profiling (see information about Function
Check above).
Whichever profiler you use (gprof or Function Check), this
is the best way to use QProf because it will automatically
recognize and call the right profiler.
- A text profile results generated by `gprof' after the
binary program has been executed and the `gmon.out' file
has been created as a result of the execution. To create
the text profile results file, do the following:
$ gprof -b myprogram > results.txt
Then open the `results.txt' file with QProf. Please note
that QProf has only been tested with the output files produced
by GNU gprof 2.9.5 and up. Your mileage may vary if you are
using an earlier version.
Make sure that the "gprof" radio button is checked in the
Open File dialog box.
- A text profile results generated by 'Function Check' after
the binary program has been executed and the 'fnccheck.out'
file has been created as a result of the execution.
- This only works for v1.4 of Function Check (known as
fnccheck). Version 3 compatibility is in the pipeline.
To create the text profile results file, do the following:
$ fncdump +calls -no-decoration myprogram > results.txt
Then open the 'results.txt' file with QProf. Note that you'll
have to check the 'Function Check' radio-button at bottom of
the File Selector dialog for QProf to recognize the file as
the output of the Function Check profiler.
Make sure that the "Function Check" radio button is checked
in the Open File dialog box.
- The displaying of Palm OS Emulator profiling information will be
deprecated.
EXTENDED FEATURES
-----------------
QProf offers a number of tools to help you profile your code. It
can optionally hide the contents of template-functions for
readability, display a subset of the complete list when you type
part of a function name in the entry field on top of the "flat"
list, print your results, diff two result files, etc. Please read
the online manual to learn more about these features.
If the QTreeMap library is present (http://sourceforge.net/projects/qtreemap/)
then an additional menu item will come up on the Tools menu to allow the
user to display the profile information as TreeMaps.
In addition to saving the call graphs as files, it is now possible to
display the graphs from within QProf, although this functionality is
basic. This requires at least one of the following applications to be
present
- GraphViz (http://www.graphviz.org)
Feel free to send bugs and patches to
karbofos@ymail.com
Share and enjoy,
Eduard Kalinowski