Building a program for profiling

Although you can profile any program, you'll get the most useful results by profiling executables built for debugging and profiling. The debug information lets the IDE correlate executable code and individual lines of source; the profiling information reports call graph data or precise function time measurements.

Note:

Sampling and Call Count profiling is handled by functions in libc; Function Instrumentation profiling is handled by functions in libprofilingS.a; occasionally check our website for any updates to these libraries.

Profiling features associated with build variants

This table shows the Application Profiling features supported with the various profiling modes:

Feature Sampling Sampling and Call Count Function-Instrumentation
Own Function Time Yes Yes Yes
Thread Time Yes Yes Yes
Start/Stop Profiling Yes Yes Yes
Source Location (if compiled with debug) Yes Yes Yes
Line level editor annotations Yes Yes No
Function calls editor annotations No No Yes
Thread tree mode Yes Yes Yes
Table mode Yes Yes Yes
Call graph mode No Yes Yes
Who calls/Who called No Yes Yes
Calls Count No Yes Yes
No recompile Yes No No
Function backtrace No No Yes
Deep Function time (own + descendants) No No Yes
Timed stack tree No No Yes
Max/Min Time No No Yes
Related concepts
Postmortem profiling for Call Count and sampling
Application Profiler tab
Related tasks
Running and profiling a process
Profiling a running process