Content deleted Content added
→References: to 30em: variable number of columns based on window width/browser setting; less white space & scrolling |
→Instrumentation: to {{{tl|as of}} |
||
Line 84:
This technique effectively adds instructions to the target program to collect the required information. Note that [[instrumenting]] a program can cause performance changes, and may in some cases lead to inaccurate results and/or [[heisenbug]]s. The effect will depend on what information is being collected, and on the level of detail required. For example, adding code to count every procedure/routine call will probably have less effect than counting how many times each statement is obeyed. A few computers have special hardware to collecting information; in this case the impact on the program is minimal.
Instrumentation is key to determining the level of control and amount of time resolution available to the profilers. The following lists a few popular tools ({{as of
* '''Manual''': Performed by the programmer, e.g. by adding instructions to explicitly calculate runtimes, simply count events or calls to measurement [[API]]s such as the [[Application Response Measurement]] standard.
* '''Automatic source level''': instrumentation added to the source code by an automatic tool according to an instrumentation policy. Example: [[Parasoft]] [[Insure++]]
|