Intel® VTune™ Amplifier provides information on code performance for users developing serial and multithreaded applications on Windows* and Linux* operating systems. On Windows systems, VTune Amplifier integrates into Microsoft Visual Studio* software and is also available as a standalone GUI client. On Linux systems, VTune Amplifier works exclusively as a standalone GUI client.
On all supported systems, you can use the command line interface for collecting data remotely or for performing regression testing.
VTune Amplifier helps you analyze the algorithm choices and identify where and how your application can benefit from available hardware resources. Use VTune Amplifier to locate or determine the following:
The most time-consuming (hot) functions in your application and/or on the whole system
Sections of code that do not effectively utilize available processor time
The best sections of code to optimize for sequential performance and for threaded performance
Synchronization objects that affect the application performance
Whether, where, and why your application spends time on input/output operations
The performance impact of different synchronization methods, different numbers of threads, or different algorithms
Thread activity and transitions
Hardware-related bottlenecks in your code
VTune Amplifier provides features that facilitate the analysis and interpretation of the results:
Analysis tree: Use the performance analysis tree to choose and configure the type of analysis to run on your target.
Start data collection paused: Click the Start Paused button on the command bar to start the application without collecting performance data and click the Resume button to enable the collection at the right moment.
Viewpoints: Choose among preset configurations of windows and panes available for the analysis result. This helps focus on particular performance problems.
Hot keys to start and stop the analysis: Use a batch file to create hot keys to start and stop a particular analysis.
Top-down tree: Use to understand which execution flow in your application is more performance-critical.
Timeline analysis: Analyze thread activity and the transitions between threads.
Frame analysis: Use the Frame API to mark significant transition points in your code and analyze performance per frame.
GPU analysis: Analyze applications using a Graphics Processing Unit (GPU) and correlate activities on both the CPU and GPU.
Grouping: Group your data by different granularity in the Bottom-up window to analyze the problem from different angles.
Source analysis: View source with performance data attributed per source line to explore possible causes of an issue.
Comparison analysis: Compare performance analysis results for several application runs to localize the performance changes you got after optimization.
Remote analysis: Configure the data ollection on the host system (Linux, OS X, or Windows) and run analysis on a remote system (Linux or Android*). Remote analysis on Android and embedded Linux systems is supported by the VTune Amplifier for Systems only.
Caution
Because the VTune Amplifier requires specific knowledge of assembly-level instructions, its analysis may not operate correctly if a program (target) is compiled to generate non-Intel architecture instructions. In this case, run the analysis with a target executable compiled to generate only Intel instructions. After you finish using the VTune Amplifier, you can use optimizing compiler options that generate non-Intel architecture instructions.