Profiling

From CDOT Wiki
Revision as of 16:37, 31 January 2017 by Chris Tyler (talk | contribs) (Profiling Granularity)
Jump to: navigation, search
Important.png
This is a draft only!
It is still under construction and content may change. Do not rely on this information.

Profiling is the process of determining how a program is using the resources that it is consuming.

Resource that can be Profiled

Resources consumption that can be analyzed during profiling include:

  • Time (both clock time (total real time, user time, and the amount of time the kernel spent on behalf of the program)
  • Memory
  • Temporary storage
  • Energy (this is a relatively new area of profiling)

Profiling Granularity

Most profiling systems determine resource usage on a per-function basis.

Note.png
Function vs. Method
When programming in an object-oriented language, code blocks may be called methods. The distinction between functions and methods is effectively one of "packaging" only - at the machine code level, the distinction effectively disappears.