Jump to content

AMD CodeAnalyst

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Raysonho (talk | contribs) at 17:51, 30 June 2012 (Instruction-Based Sampling). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
CodeAnalyst
Developer(s)AMD
Operating systemLinux, Windows
TypeProfiler
LicenseProprietary software, GNU General Public License [1]
Websitedeveloper.amd.com/tools/CodeAnalyst/Pages/default.aspx

AMD CodeAnalyst is a GUI-based code profiler for x86 and x86-64-based machines. CodeAnalyst has similar look and feel on both Linux and Microsoft Windows platforms. CodeAnalyst uses specific hardware profiling techniques which are designed to work with AMD processors, as well as a timer-based profiling technique which does not require a specific processor; this allows a subset of profiling features to work on non-AMD processors, such as Intel processors.[2]

Code optimization

CodeAnalyst is built on OProfile for the Linux platform and is available as a free download. The GUI assists in various kinds of code profiling including time based profiling, hardware event-based profiling, instruction-based profiling and others. This produces statistics about details such as time spent in each subroutine which can be drilled down to the source code or instruction level. The time taken by the instructions can be indicative of stalls in the pipeline during instruction execution. Optimization could be as simple as reordering the instructions for maximum utilization of a data line cache or altering/removing the branches and loops so that the maximum number of execution units(Load/Store units, ALU, FP execution unit...) are utilized in parallel.

Instruction-Based Sampling

CodeAnalyst supports IBS (Instruction-Based Sampling) that was introduced in Family 10h AMD processors (Barcelona). With IBS support, CodeAnalyst can more precisely identify instructions that cause pipeline stalls and cache misses. [3]

See also

References

  1. ^ AMD CodeAnalyst Performance Analyzer for Linux
  2. ^ "How I ran AMD CodeAnalyst on an Intel CPU". Nov 04, 2009. Retrieved 2010-02-23. {{cite web}}: Check date values in: |date= (help); External link in |authorlink= (help)
  3. ^ "AMD Developer Central" (PDF). AMD. Retrieved 2012-02-14.