Content deleted Content added
+ cat |
m Reverted edits by 187.244.75.33 (talk) (HG) (3.4.12) |
||
(29 intermediate revisions by 25 users not shown) | |||
Line 1:
{{Other uses|Hotspot (disambiguation)#Computing}}
{{
A '''hot spot''' in [[computer science]] is most usually defined as a region of a [[computer program]] where a high proportion of executed instructions occur or where most time is spent during the program's execution (not necessarily the same thing since some instructions are faster than others).
If a program is
The [[
<blockquote>In the
===Iteration===
The example above serves to illustrate that effective hot spot detection is often an [[iteration|iterative]] process and perhaps one that should always be carried out (instead of simply accepting that a program is performing reasonably). After eliminating all extraneous processing (just by removing all the embedded comments for instance), a new runtime analysis would more accurately detect the "genuine" hot spots in the translation. If no hot spot detection had taken place at all, the program may well have consumed vastly more resources than necessary, possibly for many years on numerous machines, without anyone ever being fully aware of this.
==Instruction set simulation as a hot spot detector==
An [[instruction set simulator]] can be used to count each time a particular instruction is executed and later produce either an on-screen display, a printed program listing (with counts and/or percentages of total [[instruction path length]]) or a separate report, showing precisely where the highest number of instructions took place. This only provides a ''relative'' view of hot spots (from an instruction step perspective) since most instructions have different timings on many machines. It nevertheless provides a measure of highly used code and one that is quite useful in itself when tuning an algorithm.
==See also==
*[[Profiling (computer programming)]]
==References==
{{Reflist}}
[[Category:Software
|