Content deleted Content added
→Instrumentation: adding example |
Tidy up some language about methodologies |
||
Line 2:
In [[software engineering]], '''profiling''' ("program profiling", "software profiling") is a form of [[dynamic program analysis]] that measures, for example, the space (memory) or time [[Computational_complexity_theory|complexity of a program]], the [[instruction set simulator|usage of particular instructions]], or frequency and duration of function calls. The most common use of profiling information is to aid program [[optimization (computer science)|optimization]].
Profiling is achieved by instrumenting either the program [[source code]] or its binary executable form using a tool called a ''profiler'' (or ''code profiler''). A number of different techniques may be used by profilers, such as event-based, statistical, instrumented, and simulation methods.
== Gathering program events ==
|