Intel® VTune™ Performance Analyzer 9.1 Update 8 for Linux*
Release Notes

 

Contents

Overview
What's New
Core Features
Package Contents
System Requirements
Installation
Usage Notes
JIT Profiling API Support
Using per CPU buffering in an Activity Collecting Sampling data
Known Limitations
Technical Support
Documentation
Additional Information
Disclaimer and Legal Information

Overview

The VTune™ Performance Analyzer 9.1 for Linux* product provides graphical user interface and command-line capabilities that assist in finding performance bottlenecks and hotspots in application code. It enables you to collect, analyze, and display performance data for Linux* applications running on IA-32, Intel® 64 or Itanium®-based systems.

The VTune analyzer in the integrated Eclipse* platform environment provides these data collection functionalities:

Additional information on the Intel Software Development Products is available at http://www.intel.com/software/products/ .

What's New

Feature

Benefit

New operating system support including Ubuntu* 9.10, RedHat EL 5 update 5, Fedora* 12, Moblin* 2.1 and Moblin* 2.2 For a complete list, see:  Supported Distributions
Support latest Intel Processors Support for the latest Intel processors, including the all new 2010 Intel® Core™ Processor Family, Intel® Itanium® 2 Processor 9300 sequence, Intel® Atom™ Processor Z6xx.

 Core Features

New Eclipse 3.4.x support Support for Eclipse 3.4.x has been added!
JIT Profiling API support The VTune analyzer now supports profiling runtime generated and interpreted code.  See the jit_profile_API.pdf file for details.
GNU* debuglink support The VTune analyzer supports debug information for Linux OS modules saved both with the module or as a separate file. You can store the debug information file near the corresponding module, or specify the path to a directory with the debug information files in the search directory list for symbol files.
VTune™ Performance Analyzer Reader/Writer API (TBRW) support This API enables you to read and write persisted data in an on-disk format that is compatible with the VTune™ Performance Analyzer. See the TBRW.pdf file for details.
New events for tuning multi-core Intel® Core™ Duo processors New events measure parallelism, core sharing of the bus & cache and modified data sharing by threads. These identify opportunities to improve threading, tune multi-core sharing of the bus & cache and optimize cache-line usage.
Sifts the Intel compiler optimization report to find the information you need The Intel compiler optimization report contains a wealth of useful information. The problem is that the 3 lines that you care about are buried in a large multi-megabyte file and hard to find. After you locate your hotspot using the VTune analyzer, just select those lines of code and press the optimization report button. The VTune analyzer filters the report and shows you only the portions of the report that apply to the code you selected. Now you can see what the compiler did and easily choose pragmas that will dramatically improve performance.
Installation improvements Improvements have been made to the installation to make registration and installation easier. Added option for non-interactive installation. This option enables installing on multiple systems using settings defined in a configuration file.
Sampling Over Time View The Sampling Over Time view enables you to view events sampled chronologically during the activity data collection. This enables you to locate your hotspots within the specific time segments in which they occur.
Instruction Filtered Events on Intel® Itanium® architecture Instruction filtering allows you to collect events only when they occur with a specified opcode. This helps isolate events only when they occur at critical times.
Branch and Call Navigation made easy Instantly follow a branch in disassembly by clicking a menu.  No more hunting for the destination, just choose "Go to target" to scroll the display.
Faster Call Graph Now you can selectively profile Java* or native code to improve runtime performance.  By gathering data only on the modules being tuned, overhead is reduced and runtime is improved.
Now native on Intel® Itanium® Architecture!
Finding your bottleneck is easier than ever. Get a list of the top 5 time consuming functions with just one simple dialog box. One click on a function name displays the source and shows what’s taking all the time. This makes it fast and easy to find your performance bottleneck. VTune analyzer is integrated with the most popular development environment on Linux - Eclipse. The new Eclipse 3.2.1 includes context sensitive hint panes to help the user become effective quickly with important tips and explanations.
Event ratios Often a ratio like “clockticks / instruction retired” is a better metric than just a single event. You can use our pre-defined ratios or create your own.
Multi-Row column labels and improved display layouts Better column labels and improved display layouts make finding the right information faster and easier.
A new “Getting Started” document  Enables users become productive quickly, with a short “hands on” tour of VTune Analyzer’s three major analysis flows.
Core Product Features
Multi-user Call Graph and Large System Support Large system support is even better with the addition of Multi-user Call Graph and Sampling buffering per CPU. Multi-user Call Graph allows several users to share a large resource for concurrent performance testing. Buffering per CPU ensures that Sampling is accurate on large HPC systems.
Read only file system support Performance tuning in a secure environment just became a whole lot easier. Call Graph can now analyze secure systems with read only file systems.
Large and small applications welcome VTune analyzer is a robust solution even with large executables (100MB+). If you have a large design with hundreds of thousands of functions, bring it to VTune analyzer.
No recompile required VTune analyzer works with your existing binary. Unlike traditional instrumented profilers that make you recompile or modify your build script for profiling, you just run VTune analyzer with your normal production build.
System-wide event based sampling Accurately identifies where the program is spending its time with negligible overhead (typically less than 5%).
Call graph Determines calling sequences and finds the critical path, but has a higher overhead.
Both sampling & call graph. Unlike other offerings, VTune analyzer provides both sampling & call graph analysis tools. Even if you plan to do mostly call graph analysis, running sampling first lets you identify the modules that need it so you only pay the overhead for the modules that need to be analyzed. This can be vital on large projects. Sampling is great for analysis of “loopy” code. Call Graph is usually better for “branchy” code. You need both to get the job done right.
Op-code matching Sometimes just choosing an event is not selective enough, because the event can occur both at critical and non-critical times.  On Intel® Itanium® architecture, op-code matching allows you to collect events only when they occur with a specified op-code.  This lets you to isolate problems like poor pre-fetch and poor memory alignment
Non-uniform memory architecture (NUMA) support Sampling data is now stored in local CPU memory to minimize system bus traffic. This is critical to avoid saturating the system bus and slowing the system under test.
Enhanced CPU masking For systems with a large number of processors you usually only want to collect data from a few of the CPUs. CPU masking lets you control exactly where data is collected, from all processors, only those in your allocation or only the processors you specify. This greatly reduces the amount of data you need to collect.
Open your source editor from Source View You’ve found your performance problem in Source View and are ready to edit the source. Instead of browsing for the file and hunting for the line you need, a single menu click opens the file for edit and scrolls to the selected line
Event aliasing When you create a custom event, it is often difficult to remember exactly what you did. Event aliasing let’s you create a custom label that is meaningful to you.
Tune Inline Functions Tune your inlined code with instance-specific event counts on the source and assembly views.
Hotspot Navigation Find the hottest spot, or jump to the next hottest line. Just select the event you want to navigate by clicking in its column, and then click the Min, Max, Next and Previous icons to quickly browse through your hot spots.
Faster Source and Assembly Views Source view and assembly views open and scroll much faster – over 10X faster on many large files.

 

See the System Requirements section below for a full list of supported Linux* distributions and Linux* JVMs.

Package Contents

The VTune analyzer for Linux* contains the following components:

System Requirements

This section details the processor, memory and operating system requirements for installing the various components of the VTune analyzer.

Processor Requirements for Installing the VTune™ performance Analyzer

The following table lists the processor and operating system requirements for installing the various components of the VTune analyzer. The table columns are the following:

ProcessorVTune analyzer
with Eclipse* (vtlec)
VTune analyzer  Command Line Interface (vtl)RDC (vtserver)
Mobile
Intel® Atom™ Processor Z6xx - SEP -
Intel® Atom™ processor CE4100 -SEP-
Intel® Atom™ processor -SEP-
Mobile Intel® Pentium® 4 processor - M +++
Intel® Pentium® M processor +++
Intel® Celeron® M processor +++
Intel® Celeron® D processor +++
Intel® Celeron® processor +++
Desktop
Intel® Core™ i7, i5, i3 processors + + +
Intel® Core™2 Quad processor +++
Intel® Core™2 Extreme processor +++
Intel® Core™2 Duo processor +++
Intel® Core™ Duo processor +++
Intel® Core™ Solo processor +++
Intel® Pentium® Processor Extreme Edition +++
Intel® Pentium® 4 processor Extreme Edition ++ +
Intel® Pentium® 4 processor +++
Intel® Pentium® 4 processor supporting Hyper-Threading Technology +++
Intel® Pentium® 4 processor with Streaming SIMD Extensions 3 (SSE3) +++
Server
Intel® Xeon® processors 65xx and 75xx series ++ +
Quad-Core Intel® Xeon® processor 5x00 sequence +++
Dual-Core Intel® Xeon® processor 7xxx, 5xxx, and 3xxx series +++
Quad-Core Intel® Xeon® Processor MP 73xx series +++
Intel® Xeon® processor MP +++
Quad-Core Intel® Xeon® processor 32xx series +++
Intel® Xeon® processor+ ++
Intel® Xeon® processor with Intel® Extended Memory 64 Technology (Intel® 64) +++
Intel® Pentium® D Processor +++
Intel® Pentium® 4 processor +++
Dual-Core Intel® Itanium® 2 processor 9000 sequence +++
Low Voltage Intel® Itanium® 2 Processor +++
Intel® Itanium® 2 Processor 9300 sequence +++
Intel® Itanium® 2 processor +++

 

Memory and Disk Space Requirements

This section details the memory and disk space requirements for using the VTune analyzer. Note that memory and disk space requirements for the application you are tuning may be larger than the VTune analyzer requirements. In this case you need to have sufficient memory and disk space for running your application in addition to the VTune analyzer application and the data collection.

When collecting data on your application with the call graph collector, your application requires more memory than for regular execution.

Memory Requirements

The following table details the memory requirements for running the VTune analyzer application:

VTune™ Performance Analyzer interface RAM Swap space
command line 256 MB 256 MB
integrated Eclipse platform environment 512 MB 512 MB

Disk Space Requirements

The following table details the disk space requirements for running the VTune analyzer:

Component Disk Space for IA-32 Systems Disk Space for Intel® 64 Systems Disk Space for Intel® Itanium® Architecture Systems
Total (tar file, its extracted files, and all installed components) 902 MB of total available disk space 918 MB of total available disk space 617 MB of total available disk space
/opt/sag directory (created during install) for the included EntireX DCOM for Linux software. 41.3 MB 45.4 MB 57.2 MB
Eclipse* and JRockit* components (/opt/intel/eclipsepackage/3.2.1/eclipse and /opt/intel/eclipsepackage/3.2.1/jrockit-jre1.5.0_10)  117.8 MB 117.8 MB  142.1 MB

 

Operating System Requirements

This section explains the operating system requirements for running the VTune analyzer for Linux.

Operating System Requirements for Linux Command-line and Graphical User Interface

NOTE:
If you are not using a default kernel on the supported Red Hat* and SuSE* distributions listed below, use the VTune™ Performance Analyzer Driver Kit to compile drivers for your kernel. The VTune analyzer Driver Kit software is included with this VTune analyzer product, and can also be obtained via Intel® Premier Support. See Technical Support section below for more information on the Intel® Premier Support.

Linux* Distributions Supported

VTune analyzer for Linux supports the following major Linux distributions:    

This update to VTune analyzer for Linux has been qualified with the following updates and service packs available at the time of release:

Operating System Kernel Version IA-32 Intel® 64 Itanium®-based systems
Red Hat* Enterprise Linux* 4 Update 8
2.6.9-89.EL
+ + +
Red Hat* Enterprise Linux* 5 Update 4 2.6.18-164.el5 + + +
Red Hat* Enterprise Linux* 5 Update 5 2.6.18-194.el5 + + +
Fedora* 10 2.6.27.5-117.fc10 + +  
Fedora* 11 2.6.29.4-167.fc11 + +  
Fedora* 12 2.6.31.5-127.fc12 + +  
SuSE* Linux* Enterprise Server (SLES) 9.0 (through Service Pack 4) 2.6.5-7.308 + + +
SuSE* Linux* Enterprise Server (SLES) 10.0 (through Service Pack 3) 2.6.16.60-0.54.5 + + +
SuSE* Linux* Enterprise Server (SLES) 11.0 2.6.27.19-5 + + -
SuSE* Linux* 10 2.6.13-15 + +  
Debian* 4† and 5 2.6.18-4 and 2.6.26-1 + + +
Ubuntu* 8.10†† 2.6.27-7-generic + +  
Ubuntu* 9.04 2.6.28-11-generic + +  
Ubuntu* 9.10 2.6.31-14-generic + +  
Asianux 3.0 2.6.18-9.10AX + + +
MontaVista* Linux  Carrier Grade Edition 4* 2.6.10 RDC    

If support is only enabled via Remote Data Collection, RDC is listed in the table entry.  The kernel versions are supported for Linux systems with supported processors for both uniprocessor systems (UP) and multiprocessor systems (SMP), unless otherwise noted.

†The Eclipse-based VTune analyzer graphical interface is not supported on Debian* 4 running on Intel® 64 architecture processors. However, the command line interface is supported. This is because a stable version of 32-bit GTK 2.0 package is not included in the distribution. You can workaround this limitation by installing 'testing' packages of the 32-bit GTK 2.0 package. This means installing the 'ia32-libs-gtk' package and updating the 'libc6-i386' package. If you do not normally run 32-bit programs on your system then there is no risk in installing and updating these packages. Note: other packages may require updating because of dependencies. Install and update the packages with the following commands:

apt-get install ia32-libs-gtk
apt-get install libc6-i386

pointing to the 'testing' repository in apt sources.list file. See the apt-get documentation for details. [SCR#31616]


††Ubuntu* 8.xx, 9.xx: ia32-libs package is required for VTune analyzer to function properly on x86_64 version of Ubuntu* running on Intel® 64 architecture processors. Ubuntu* standard distribution doesn't contain the ia32-libs package. Please install it from the universe Ubuntu* repository with the below command prior to running the VTune analyzer installation:

apt-get install ia32-libs

pointing to the 'universe' repository in the apt sources.list file. See the apt-get documentation for details.
 

The VTune Analyzer for Linux supports all compilers that follow industry standard object code formats (i.e. ELF, STABS, DWARF). 
For example, the analyzer works with
applications built with these compilers:

Operating System Requirements for Linux* Remote Data Collector

Please refer to the Operating System Requirements section in these release notes.

Java* Development Kits (JDKs)

The VTune analyzer in the integrated Eclipse platform environment has been tested for operation on the following JDK:

The VTune analyzer has been tested for profiling under the following JDKs.  The latest releases of these JDKs may be used:

On IA-32 systems:

On Intel® Itanium® architecture systems:

On systems with Intel® 64:

NOTE:
The VTune analyzer will crash under Eclipse if you run it with BEA JRockit 5.0 under Red Hat Enterprise Linux 4.0 for Intel® 64.  Do one of the following to avoid this situation:

Call graph support on the different architectures

  VTune Analyzer 9.1 for Linux*
 

Local

Remote data collector on
Linux

IA-32 Yes Yes
Intel® 64  
64-bit apps Yes Yes
32-bit apps Yes Yes
Intel® Itanium® Architecture
64-bit apps Yes Yes
IA-32 apps

No

No

Installation

Refer to the information in the Installation Guide located in the <installdir>/INSTALL.txt document.

Usage Notes

Launching the VTune™ Performance Analyzer for Linux

This section explains how to launch the VTune analyzer for Linux in the integrated Eclipse platform environment, or with the command line user interface.

NOTE:
Launching the VTune analyzer requires that the USER environment variable be defined.  The USER environment variable is usually defined during the login process.

NOTE:
For best performance when working with your Linux system remotely using an X-server, be sure the X-server supports efficient font anti-aliasing (for example, Hummingbird* Exceed* X server v10 and higher).

NOTE:
If you have ever used the Eclipse GUI from the VTune analyzer 3.x, 8.x for Linux on your machine, please remove the .eclipse directory from your $HOME directory before running the Eclipse GUI for the VTune analyzer 9.1 for Linux.

Use the following command to launch the VTune analyzer in the integrated Eclipse platform environment:
    $ <install_dir>/bin/vtlec
Where: <install_dir> is the installation directory. The default installation directory is: /opt/intel/vtune.

NOTE:
The VTune analyzer projects are saved within an Eclipse workspace. The workspace location is established at the time vtlec is invoked. By default, the workspace directory is created in the current directory. You can use the -data option to specify a workspace directory in a different location.

The following example creates a workspace directory called workspace in the directory /home/MyProj. All VTune analyzer project files are saved within that workspace directory.

    $ cd /home/MyProj
    $ /opt/intel/vtune/bin/vtlec

If you are in a directory other than MyProj and wish to invoke vtlec and view the project files created during the above session, use the following command line:

  $ /opt/intel/vtune/bin/vtlec -data /home/MyProj

To view the Eclipse help, go to Help > Help Contents. Within the help, the following books contain information on the VTune Performance Tools:  VTune™ Performance Environment, VTune™ Performance Analyzer, VTune™ Performance Analyzer Reference. For information on the various Eclipse options that can be added to the vtlec command line, see the Workbench User Guide > Tasks > Running Eclipse topic.

To change the Eclipse JVM arguments, use the standard Eclipse mechanism, the -vmargs command-line option. Use the following command:

vtlec [platform options] [-vmargs [Java VM arguments]].

NOTE:
-vmargs must be the last option on the command line.

Using the vtl Command Line

To use the command line version of the VTune Performance Analyzer, use this command line:

    $ <install_dir>/bin/vtl

where: <install_dir> is the installation directory. The default installation directory is: /opt/intel/vtune.

Using the Pause/Resume and Stop/Start APIs

Use the Start/Stop (for sampling only) and Pause/Resume APIs to start the data collection from the application and profile only specific sections of your code. See the VTune analyzer command line interface User's Guide for more information. The VTune analyzer User's Guide is in:/<install_dir> /doc/users_guide/index.htm,where /<install_dir> is the installation directory. The default installation directory is /opt/intel/vtune.

Sampling Data Collection and Analysis on Large HPC Multi-processor Systems

This section explains how to use this release for sampling collection and analysis of large multi-processor systems using the vtl command line. 

NOTE:
Due to the unique requirements for supporting large systems, if the software will be used on systems with more than 128 cores please contact us before purchase to make special arrangements.
  1. Install VTune analyzer 9.1 for Linux and setup local sampling for the number of processors on the desired Linux machine.
  2. Create and run an Activity with a sampling collector. An optional cpu-mask can be specified to limit collection to a subset of processors available on the system. For example, the following vtl command can be used for sampling processors 1, 4 and processors 20 to 25:

    vtl activity –c sampling –o "-cpu-mask 1,4,20-25"

     

  3. Open the sampling collection results using the command line viewer (vtl). For example:
     

vtl view –processes –cpu 1,4

You can use the VTune™ Performance Analyzer 8.0 (for Windows* operating systems) to view and analyze the sampling collection results in graphical mode using Process, Modules, Hotspot, and the Sampling Over Time (SOT) Views. To view the sampling data using GUI Viewers on Windows, perform the following steps:

  1. Install the VTune analyzer 8.0 or higher, on a system with the Windows operating system.
  2. Copy the .tb5 file created in step 2 above, to the Windows system.
  3. Launch the VTune analyzer 8.0 and use the File > Open File menu command to open the .tb5 file.
  4. View the sampling results in the Process/Modules/Hotspots views.
  5. Click the hourglass icon to invoke the Sampling Over Time (SOT) views for the selected processes/modules.
    NOTE:
    Collecting sampling data on systems with a large number of processors generates a significant amount of data. The most significant factor is the sampling rate.  First, try to increase the Sampling Interval value, then use CPU masking to further reduce the amount of collected data. CPU masking enables you to limit data collection only to the processors of interest.

VTune™ Performance Analyzer and the Processes Started by EntireX DCOM for Linux

The VTune analyzer uses a number of daemons which are started and stopped during the installation process. During the installation, you are prompted to select automatic startup of these daemons at system boot time, the suggested default behavior.

The administrator of the system can manually stop and start these daemons by issuing one of the following commands as root (use su - to log in as root before proceeding).

    $ /etc/rc.d/init.d/ntd stop (for RedHat and SuSE based systems)
    $ /etc/rc.d/init.d/ntd start

If the system isn’t based on RedHat or SuSE the administrator of the system should use the following commands.

    $ /etc/rc.d/init.d/ntdwrapper stop (forTurbo Linux* 10 and others)
    $ /etc/rc.d/init.d/ntdwrapper start

Typically, about thirteen (13) processes are started as a result of the dcom start script. The number can increase from there, upon use. To see the number of processes currently running on your server:

    $ ps -u vtunesag | wc -l # shows number of processes

JIT Profiling API Support

 

Using per CPU buffering in an Activity Collecting Sampling Data

Use the Per CPU buffering feature to enhance the quality of sampling results on systems with large number of processors. This feature is automatically enabled on SGI Altix Pro Pack 4 Service Pack 3, and SGI Altix Pro Pack 5 systems.

Turning on/off per CPU buffering

To manually enable Per CPU Buffering, set SEP_PERCPU_BUFFER=1 prior to starting the VTune analyzer.

To manually disable Per CPU Buffering, set SEP_PERCPU_BUFFER=0 prior to starting the VTune analyzer.

Adjusting the Priority of VTune™ Performance Analyzer process

During sampling collection, data is stored in the internal kernel buffers. When the buffers become full, the VTune analyzer flushes the data to the disk. During these brief periods, the VTune analyzer does not collect samples. To minimize the loss of samples, the VTune analyzer needs to run at a higher-than-normal priority while sampling.

To adjust the process priority, set the SEP_PRIORITY environment variable prior to starting the VTune analyzer. The valid range for this variable is between -20 to 19. A negative number means a higher priority will be used and fewer samples will be missed. A positive number means a lower priority will be used but with the risk of potentially missing a significant number of samples. A priority of 0 means some samples may be missed. If SEP_PRIORITY is not set or the value is outside of this range, then a value of -1 will be used.

Known Limitations

This section details the known limitations and possible solutions in the following areas:  Installation Limitations, General Limitations, Sampling Limitations, Call Graph Limitations Online help Limitations.

Installation Limitations

General Limitations

Sampling Limitations

[SCR #22551]

Call Graph Limitations

Other possible workarounds are:

1. Instrument the Intel MPI application in advance and pass it to mpiexec in a profiling run.
2. Don't use mpiexec and pass the profiled application parameters to the MPI daemon directly [SCR #26721]

Online Help Limitations

Technical Support

Your feedback is very important to us. To receive technical support for the tools provided in this product and technical information including FAQ's and product updates, you need to be registered for an Intel® Premier Support account on our secure web site. Please, register at the Intel Registration Center

You will find a list of support resources at: http://www.intel.com/software/products/support.  This web page will direct you to the support resources that are available to you.

Submitting Issues

This version of the VTune analyzer for Linux includes a utility that gathers information about your specific system and VTune analyzer for Linux configuration.  The information helps our engineering team analyze your issue and may lead to a faster resolution of the issue.  Please run this utility and attach the resulting log file to your support issue on Intel Premier Support.  You can run the utility by entering the following command:  /opt/intel/vtune/bin/vtqfagent.  The utility specifies the name and location of the generated log file after it runs.

Steps to submit an issue:

  1. Go to https://premier.intel.com/.  Java* and Javascript* and cookies must be enabled in your web browser to submit an issue.
  2. Type in your Login and Password. Both are case-sensitive. (If you have trouble registering or are unable to access your Premier Support account, go to https://registrationcenter.intel.com/support.  There is a link to technical support near the bottom of the page).
  3. Click Submit.
  4. Read the Confidentiality Statement and click the I Accept button.
  5. Click on the Submit Issue link in the left navigation bar.
  6. Choose Development Environment (tools,SDV,EAP) from the Product Type drop-down list.
  7. Run /opt/intel/vtune/bin/vtqfagent to generate a log file that includes information about your specific environment and VTune analyzer for Linux* configuration.
  8. Enter your question, complete the fields in the windows that follow, and attach the log file generated by running /opt/intel/vtune/bin/vtqfagent to successfully submit the issue.

Guidelines for problem report or product suggestion:

Documentation

The documentation for the VTune analyzer for Linux is presented in these formats:

See Online Help Limitations for information on known issues with the documentation.

Command-line Help

Manual Pages

To view manual entries for the VTune analyzer, enter the appropriate command:

NOTE:
To view the man pages in the local language, set the system variables LESSCHARSET and LANG as follows:

LESSCHARSET=utf-8
LANG=zh_CN.utf8
 

HTML Documentation

The HTML documentation for the VTune analyzer consists of these components:

Where: <install_dir> is the installation directory. The default installation directory is: /opt/intel/vtune.

Viewing HTML Documentation

The HTML documentation can be viewed with any web browser, although a browser that supports HTML 4.0 is recommended. Older versions of browsers (especially Netscape* and Konqueror*) may not display some of the HTML documents correctly.

Integrated Eclipse Platform Environment Documentation

The VTune analyzer documentation in the integrated Eclipse platform environment is available from the Eclipse user interface. Go to Help > Help Contents and click to expand the following books: VTune™ Performance Environment, VTune™ Analyzer,  or VTune™ performance Analyzer Reference.

Additional Information

Related Products and Services

Information on Intel software development products is available at http://www.intel.com/software/products.

Some of the related products include:

GNU libstdc++ Runtime Library Installed with the Product

This release includes a specially built version of the GNU libstdc++ runtime library, which is required for the proper execution of the product. If you need to reproduce these library binaries you must follow the procedure below. However, this is not necessary in order to use the product.

These instructions assume that the gcc-core and gcc-g++ are unpacked in gcc-3.3.3, the build happens in the parallel directory build-3.3.3, and that the build configuration has already been done.

No gcc source file, makefile, or other file either provided in the original tarfiles nor any such file generated during the build process is opened or altered by the following procedure.

  1. Build the library:
    CD build-3.3.3
    make bootstrap
  2. Save a log of the way the files are rebuilt by default, before rebuilding them:
    CD ../gcc-3.3.3/libstdc++/libsupc++
    touch tinfo.cc tinfo2.cc # make them rebuild
    CD -
    make &> out.txt
  3. In the file out.txt, copy the four lines of output that have "tinfo.cc" and "tinfo2.cc" in them into the build-3.3.3/script.sh file.
    Edit the script and add -D__GXX_WEAK__=0 just after the "-c" once for each line.
    This changes the build of these files so that type_info is compared by string instead of pointer. You can see the effect in typeinfo, where the
    __GXX_WEAK__=0 definition results in this definition:
    __GXX_MERGED_TYPEINFO_NAMES=0, which causes type_info::before() and type_info::operator== () to be declared in typeinfo and their definitions to be compiled in tinfo.cc and tinfo2.cc.
  4. Touch the files again:
    CD ../gcc-3.3.3/libstdc++/libsupc++
    touch tinfo.cc tinfo2.cc
    CD -
  5. Run the script created above. The compiler will complain about overriding a builtin.
    The value of __GXX_WEAK__ is built in to the compiler by gcc-3.3.3/gcc/cppinit.c.
    You get warnings like this:
    # <command line>:1:1: warning: "__GXX_WEAK__" redefined
    CD i686-pc-linux-gnu/libstdc++-v3/libsupc++
    $OLDPWD/script.sh
  6. Relink dependencies of the files built above:
    CD -
    make
    Install the library:
    make install

Disclaimer and Legal Information

NFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information.
The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.
Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-4725, or by visiting Intel's Web Site.

Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across different processor families. See http://www.intel.com/products/processor_number for details.

MPEG is an international standard for video compression/decompression promoted by ISO. Implementations of MPEG CODECs, or MPEG enabled platforms may require licenses from various entities, including Intel Corporation.

The software described in this document may contain software defects which may cause the product to deviate from published specifications. Current characterized software defects are available on request.

This document as well as the software described in it is furnished under license and may only be used or copied in accordance with the terms of the license. The information in this manual is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Intel Corporation. Intel Corporation assumes no responsibility or liability for any errors or inaccuracies that may appear in this document or any software that may be provided in association with this document.

Except as permitted by such license, no part of this document may be reproduced, stored in a retrieval system, or transmitted in any form or by any means without the express written consent of Intel Corporation.

Developers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Improper use of reserved or undefined features or instructions may cause unpredictable behavior or failure in developer’s software code when running on an Intel processor. Intel reserves these features or instructions for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from their unauthorized use.

BunnyPeople, Celeron, Celeron Inside, Centrino, Centrino logo, Core Inside, FlashFile, i960, InstantIP, Intel, Intel logo, Intel386, Intel486, Intel740, IntelDX2, IntelDX4, IntelSX2, Intel Core, Intel Inside, Intel Inside logo, Intel. Leap ahead., Intel. Leap ahead. logo, Intel NetBurst, Intel NetMerge, Intel NetStructure, Intel SingleDriver, Intel SpeedStep, Intel StrataFlash, Intel Viiv, Intel vPro, Intel XScale, IPLink, Itanium, Itanium Inside, MCS, MMX, Oplus, OverDrive, PDCharm, Pentium, Pentium Inside, skoool, Sound Mark, The Journey Inside, VTune, Xeon, and Xeon Inside are trademarks of Intel Corporation in the U.S. and other countries.

* Other names and brands may be claimed as the property of others.

Copyright (C) 2006-2009, Intel Corporation. All rights reserved.


This product includes software developed by the Apache Software Foundation (http://www.apache.org). The following software license applies to the software developed by the Apache Software Foundation.

Copyright (c) 2000-2005, The Apache Software Foundation. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistribution of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributing in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. The end-user documentation included with the redistribution, if any, must include the following acknowledgment:

    "This product includes software developed by the Apache Software Foundation (http://www.apache.org)."

    Alternately, this acknowledgment may appear in the software itself, if and wherever such third-party acknowledgments normally appear.

  4. The names "Apache" and "Apache Software Foundation" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact apache@apache.org.
  5. Products derived from this software may not be called "Apache", nor may "Apache" appear in their name, without prior written permission of the Apache Software Foundation.

THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The OpenSource GNU C++ runtime library source files can be downloaded at ftp://ftp.gnu.org/pub/gnu/gcc under the terms of the GNU General Public License or the GNU Lesser General Public License as published by the Free Software Foundation. Specific terms are available online at www.gnu.org or alternatively from the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. These links are provided in the hope that they will be useful, but the linked sites are not under the control of Intel® and Intel® is not responsible for the content of any linked site, or any link contained in a linked site. If you decide to access any of the third party sites linked to this site, you do so entirely at your own risk.

Copyright (c) 2004, Microsoft Systems Journal, All rights Reserved.

Portions copyright (c) 2004, eHelp Corporation, All rights Reserved.

Portions copyright (c) 1988-2001, Sequiter Software Inc. All rights Reserved.


Copyright (c) 2003, Trolltech AS, All Rights Reserved.


Copyright (c) 1989, 1991 by Jef Poskanzer.

Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This software is provided "as is" without express or implied warranty.


Copyright (c) 1999 Mizi Research Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 


Copyright (c) 1999 Serika Kurusugawa, All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Copyright (c) 1996 Daniel Dardailler.

Permission to use, copy, modify, distribute, and sell this software for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Daniel Dardailler not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. Daniel Dardailler makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.

Modifications Copyright 1999 Matt Koss, under the same license as above.


Copyright (c) 2000 Hans Petter Bieker. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Copyright (c) 2000 TurboLinux, Inc. Written by Justin Yu and Sean Chen.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS", AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 


Qt supports GIF reading if it is configured that way during installation (see qgif.h). If it is, we are required to state that "The Graphics Interchange Format (c) is the Copyright property of CompuServe Incorporated. GIF(sm) is a Service Mark property of CompuServe Incorporated."