Intel VTune

Preview:

DESCRIPTION

The VTune analyzer provides an integrated performance analysis and tuning environment that helps you analyze your code's performance on systems with IA-32, Intel(R) 64, and IA-64 architecture.

Citation preview

Intel VTune Performance Analyzer

By - Vikram Singh SainiSemester – CYear – 2009

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerINTRODUCTION

2

Intel VTune is a software analysis tool that enables you to analyze the performance of your application.

Use Sampling to gain accurate representation of your software’s actual performance.

Produce picture of program flow to identify critical functions & call sequences using Call Graph profiling.

Track system activity and resource consumption during runtime with Counter Monitor.

Tune code more efficiently using Tuning Assistant.

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

3

Sampling is the process of collecting set of data for analysis & representing analyzed data in statistical format.

Sampling helps you to identify:- 1. Hotspots – Section of code within module that takes long time to execute. 2. Bottlenecks – Area in the code that slows down the execution of the application.

Two types of sampling mechanism: 1. Time-Based sampling. 2. Event –Based sampling.

SAMPLING

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerSAMPLING (Contd…)

TIME – BASED SAMPLING

Collects samples of activity at regular intervals.

Time based sampling uses the OS timer to calculate the time interval for collecting samples.

Collected samples displays the performance data of all the processes running on computer.

The process that takes the longest time to execute contains the largest number of samples.

4

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerSAMPLING (Contd…)

5

EVENT – BASED SAMPLING

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerSAMPLING (Contd…)

EVENT – BASED SAMPLING

Event based sampling is performed on basis of processor events.

By using EBS, one can determine which process,thread,module,function or code line in the application is generating the largest number of processor events .

Using EBS you can view the corresponding events which are taking part while application is executing.

6

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

SAMPLING OVER TIME

SAMPLING (Contd…)

7

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

SAMPLING OVER TIME

Sampling OverTime view displays the samples collected with respect to time for a single event.

Enables you to identify which threads are running serially & in parallel at any point in time.

Can gather following information:- @ Context switching @ Processor utilization @ Thread interaction @ Temporal location of Hotspots

SAMPLING (Contd…)

8

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

It helps you to obtain information about the functional flow of an application.

One can identify the critical path of the application or module.

Identify function which took long time and can be optimized.

Intel Vtune displays the results of the call graph in three views: I. Graph view. II. Call list view. III. Function summary view.

CALL GRAPHS

9

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerCALL GRAPHS (Cont…)

GRAPH VIEW

10

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

CALL LIST VIEW

11

CALL GRAPHS (Contd…)

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

FUNCTION SUMMARY VIEW

CALL GRAPHS (Contd…)

12

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

Counter Monitor identifies system level issues in application when the application runs on the system.

It is used to track system activity and resource consumption during runtime.

Measures and gathers performance -related data that represents the state of the system.

Three views of analyzing the result:- # Runtime data view # Logged data view # Summary data view

COUNTER MONITOR

13

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

LOGGED DATA VIEW

COUNTER MONITOR (Contd…)

14

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

LEGEND VIEW

COUNTER MONITOR (Contd…)

15

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

SUMMARY VIEW

COUNTER MONITOR (Contd…)

16

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

Observe the performance issues of your application and provides advice in the form of a tuning advice report.

Application can be tuned at three levels: @ System-Level @ Application-Level @ Microarchitecture - Level

Three strategies to improve performance of app.: - Balancing I/O computation - Improving threading model - Improving efficiency of computation

Tuning Assistant

17

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerTuning Assistant (Contd…)

18

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerTuning Assistant (Contd…)

Types of Advices- # Sampling-based advice # Counter monitor-based advice # Source-based advice # Static assembly penalties

Static assembly penalties - - Penalty - Warning

Insight - Is a performance issue that can act as bottleneck to the performance of an application.

19

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

Categories of Insights - @ Top insights @ Hotspots insights @ Workload insights @ System Info @ Module insights @ Static Analysis

20

Tuning Assistant (Contd…)

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance AnalyzerReferences

Help file – Intel VTune.chm

www.intel.com

www.hiperism.com

Book - Intel VTune Performance Analyzer Essentials (Author: James Reinders)

Book - NIIT 3rd Semester Intel VTune

Background of slides is inspired from NIIT slides.

21

Code Optimization and Performance Tuning Using Intel VTune

Intel VTune – Performance AnalyzerIntel VTune – Performance Analyzer

Thanks !Queries are welcome ???

Your queries please

22

Recommended