Overview

AMD CodeAnalyst Performance Analyzer for Linux is an open source, front-end graphical user interface to Oprofile. The graphical user interface simplifies the process of collecting performance data and enhances data analysis. Profiles are shown in both tabular and chart form. Users can drill down from system-level processes and modules to source code or instructions.

AMD CodeAnalyst taps into the performance monitoring capabilities of AMD processors. AMD CodeAnalyst supports the collection of up to 32 performance events in a single test run. This capability makes it easier to stage performance experiments. AMD CodeAnalyst also supports Instruction-Based Sampling (IBS) – a new performance measurement technique available on AMD Family 10h processors. Check out the  “Introduction to CodeAnalyst” video.

Go to Downloads

Oprofile with Support for the Latest AMD Processors

AMD CodeAnalyst also provides Oprofile command line tools (i.e. opcontrol, opreport, and opannotate) with up-to-date support for the latest AMD processors. Developers and performance engineers can get started with events and other features that are not yet available in the mainstream Oprofile distribution.

Please provide feedback and ask questions on the CodeAnalyst Forum.

Software License

AMD CodeAnalyst is released under GNU General Public License version 2.0. Please see terms and conditions.

Features

AMD CodeAnalyst for Linux performs these kinds of analysis:

  • Time-Based Profiling (TBP) identifies the parts of a program with the highest execution time — performance hotspots. Hotspots are the best candidates for optimization and tuning.
  • Event-Based Profiling (EBP) helps diagnose performance issues within program hot-spots. For example, EBP measures hardware events such as cache misses and TLB misses in order to find opportunities to improve data access patterns.
  • Instruction-Based Sampling (IBS) collects a wide range of performance information in a single measurement run. IBS precisely associates hardware events with the instructions that cause the events. This precision makes it easier to identify performance culprits. IBS is a feature of the latest generation of AMD processors (AMD Family 10h processors) and is supported by CodeAnalyst when it is available on the host platform.
  • Basic block analysis aggregates and attributes profile data to basic blocks. Basic block analysis makes it easier to analyze and follow program execution flow at the instruction level.
  • In-line function analysis helps developers assess the performance of functions which are expanded in-line. It aggregates profile data across all the (expanded) instances of each in-lined function. It also simplifies navigation to instances.

There are two different ways to use AMD CodeAnalyst for Linux.

  • The standalone AMD CodeAnalyst application has an easy to use interface that stages performance experiments and presents the results in graphs, tables and annotated source code. The AMD CodeAnalyst GUI supports drill-down and navigation, supporting convenient top-down performance analysis.
  • Profile data collection can be configured, initiated and controlled using OProfile’s command line tools. Data can then be imported into the standalone CodeAnalyst application. Command line tools can also be used to produce textual reports (via opreport, opannotate, etc.) Commands can be embedded in scripts making it easier to stage and repeat performance experiments.

AMD CodeAnalyst for Linux has these additional key features:

  • Low overhead system-wide data collection monitors both user- and kernel-space software
  • Does not require modification to source code or executable binary
  • Analyzes JIT compiled code (Java) and native code
  • Project- and session-oriented GUI to organize profile data and configurations
  • Predefined profiling configurations for different kinds of analysis
  • Multi-level aggregation and performance summaries
    • System, module, function, source and instruction level summaries
    • Optional separation of profile data by core and by process
  • Code density chart to quickly identify and navigate to program hot-spots
  • Predefined view configurations including performance rates and ratios
  • Import profile data collected via command line profiling utility into the GUI for analysis
  • Export results in CSV format
  • Pause and resume profiling using GUI buttons
  • Uses counter multiplexing to collect up to 32 events in a single profiling session
  • Profile packaging utility assist data collection on remote host and import/analysis on local workstation
  • Open source under GNU General Public License (GPL) version 2
  • On-line help and tutorials

What’s New

CodeAnalyst for Linux Release 3.4

AMD CodeAnalyst Performance Analyzer for Linux 3.4 supports AMD Processor family 15h (codenamed “Trinity”). Support includes Family 15h performance monitoring counter (PMC) events and Instruction-Based Sampling (IBS).

Also, in this release, we have added:

  • Support for new Linux distributions Ubuntu 12.04 and RHEL 5.8.
  • CAKM module support for Linux kernel version 3.2.0.XX.
  • Added a new profile type “Time-Based Profiling (PERF)” using the Linux PERF kernel subsystem.
  • Various minor enhancements and bug fixes.

Please provide feedback and ask questions on the CodeAnalyst Forum.

System Requirements

AMD CodeAnalyst for Linux supports the following platforms: 32-bit and 64-bit Linux distributions based around the 2.6 and 3.0 kernel series on x86 architecture and AMD64 architectures.

Downloads

File Name Version Size Launch Date OS Bitness Description
RHEL5U8 and CentOS 5.8

File Name

Version

3.4

Size

10.3 MB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst RPM package

File Name

Version

3.4

Size

10.3 MB

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst RPM package

File Name

Version

3.4

Size

304 KB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)

File Name

Version

3.4

Size

300 KB

Launch Date

07/10/2012

OS

64 -bit

Bitness

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)
RHEL6U2 and CentOS 6.2

File Name

Version

3.4

Size

0.98 MB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)
Source Tarballs

File Name

Version

3.4

Size

11.7 MB

Launch Date

07/10/2012

OS

Bitness

Both

Description

Source tarball containing CA/DA-GUI, CA-modified OProfile, and CAKM
Ubuntu 12.04

File Name

Version

3.4

Size

10.2 MB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst DEB installation package for Ubuntu.

File Name

Version

3.4

Size

10.2 Mb

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst DEB installation package for Ubuntu

File Name

Version

3.4

Size

78 KB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst-KernelModule DEB installation package for Ubuntu (Recommended for latest hardware support)

File Name

Version

3.4

Size

79.6 KB

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst-KernelModule DEB installation package for Ubuntu (Recommended for latest hardware support)

File Name

Version

3.4

Size

8.98 MB

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst RPM package

File Name

Version

3.4

Size

0.98 MB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)

File Name

Version

3.4

Size

0.99 MB

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)
SLES11SP2

File Name

Version

3.4

Size

8.69 MB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst RPM package

File Name

Version

3.4

Size

8.58 MB

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst RPM package

File Name

Version

3.4

Size

369 KB

Launch Date

07/10/2012

OS

Bitness

32-bit

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)

File Name

Version

3.4

Size

374 KB

Launch Date

07/10/2012

OS

Bitness

64-bit

Description

CodeAnalyst-KernelModule RPM installation package (Recommended for latest hardware support)