SlideShare a Scribd company logo
1 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Objectives


                During this session you will learn to:
                   Identify the features of VTune Performance Analyzer
                   Identify hotspots and bottlenecks in an application using
                   sampling




     Ver. 1.0                                                              Slide 1 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Exploring VTune Performance Analyzer


                VTune Performance is a powerful and easy-to-use
                software-analysis tool.
                It collects, analyses, and displays performance data for a
                wide variety of applications.
                It can be used to identify and locate the code snippets in
                your application that show the highest amount of activity
                over a specific period.
                It also displays how an application interacts with the OS or
                other software, such as drivers.




     Ver. 1.0                                                         Slide 2 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Features of VTune Performance Analyzer


                Various features of VTune Performance Analyzer are as
                follows:
                ►   Sampling              Calculates the actual performance
                                          of the system over a period and for
                ►   Call graph            Provides a graphical view of the flow of
                                          various processor events
                                          an application and helps you identify
                ►   Counter monitor       Provides system-level performancein the
                                          critical functions and timing details
                                          information, such as resource
                ►   Tuning assistant      application
                                          Provides tuning advice from an analysis
                                          consumption, during the execution of an
                                          of the performance data. The tuning
                ►   Hotspots view         application
                                          Helps identifyyou improve code that takes
                                          advice helps the area of performance
                                          the maximum CPU time
                                          of an application




     Ver. 1.0                                                                Slide 3 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Working With VTune User Interface


                VTune Performance Analyzer provides flexible user
                interfaces.
                Using these interfaces, you can manage and organize
                various windows and analyze views, according to your
                requirements.




     Ver. 1.0                                                     Slide 4 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Working With VTune User Interface (Contd.)




                • Tuning andData viewsMenus window displays messages
                  Menus browser: The display analysis data in displays
                  Data view: toolbars: Tuning Browser window various
                  Output window: The Output and toolbars provide easy a
                  list of the contents of a project. This window enables you to
                  access to
                  formats. the common commands
                  during data collection and analysis.of the VTune
                  view the result of activities. The Tuning Browser window
                  Performance Analyzer. Using these commands, you can
                  also enables you to use all the activities related to the
                  access the information that the VTune Performance
                  project. provides.
                  Analyzer
     Ver. 1.0                                                           Slide 5 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Just a minute


                Which data view displays all the threads that run within a
                selected process?
                Which data view enables you to pinpoint problem areas in
                the code?




                Answer:
                   Thread view
                   Source view




     Ver. 1.0                                                        Slide 6 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Identifying Wizards in VTune


                   The different wizards available in VTune Performance
                   Analyzer are displayed in the following table.

                          Name                                            Description
                Quick Performance Analysis   It enables you to quickly analyze your application's performance.
                (QPA) wizard                 This wizard enables you to create an activity with any combination
                                             of sampling, counter monitor, and call graph collectors.
                Complete setup wizard        It enables you to create an activity and configure multiple collectors
                                             at the same time. The wizard prompts you to enter values only for
                                             the basic parameters and uses default values for others.

                Counter monitor wizard       It enables you to create an activity and configure the counter
                                             monitor data collector. The wizard prompts you to enter values only
                                             for the basic parameters, and uses default values for others.




     Ver. 1.0                                                                                              Slide 7 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Identifying Wizards in VTune (Contd.)


                 The different wizards available in VTune Performance
                 Analyzer are displayed in the following table.

                         Name                                        Description

                Sampling wizard        It enables you to create an activity and configure the sampling collector
                                       to profile any type of application. The wizard prompts you to enter
                                       values for the basic parameters and uses default values for others.

                Call graph wizard      It enables you to create an activity and configure the call graph data
                                       collector to profile any type of application. The wizard prompts you to
                                       enter values for the basic parameters and uses default values for
                                       others.
                Advanced Activity      It enables you to control all the steps of activity creation and
                Configuration wizard   configuration.
                                       You can add multiple data collectors and configure them. You can also
                                       add application/module profiles to an activity and associate them with
                                       any of the data collectors.
                                       Use the Advanced Activity Configuration option offers more flexibility in
                                       activity creation.




     Ver. 1.0                                                                                        Slide 8 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Using Sampling


                Sampling is the process of collecting a set of data for
                analysis and representing the analyzed data in statistical
                format.
                Sampling enables you to:
                ►   Identify hotspots                  Hotspot is the section of code
                ►   Identify bottlenecks               that takes a long time to
                                                       Bottleneck is the area of code
                                                       execute.
                                                       that slows down the execution
                                                       It consumes a large amount of
                                                       of the application.
                                                       processor time.
                                                       All bottlenecks are hotspots but
                                                       all hotspots are not bottlenecks.




     Ver. 1.0                                                               Slide 9 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Using Sampling (Contd.)


                When you perform an activity by using time-based
                sampling, the VTune Performance Analyzer:
                   Executes the application you have launched
                   Stops the processor at the sampling interval and collects
                   samples of the specified application
                   Stores sampling data in the buffer. When the buffer is full, it
                   stops sampling. The VTune Performance Analyzer then writes
                   the sampling data to the disk and resumes sampling
                   Continues to collect sampling data until the specified
                   application terminates or the specified sampling duration ends
                   Analyzes the collected data, creates an activity result in the
                   Tuning Browser window, and displays the total data collected
                   for each module




     Ver. 1.0                                                             Slide 10 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Using Sampling (Contd.)


                Event Based Sampling (EBS) is performed on the processor
                events.
                EBS enables you to determine which process, thread,
                module, function, or code line in the application is
                generating the largest number of processor events.




     Ver. 1.0                                                    Slide 11 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Using Sampling (Contd.)


                Sampling over time view shows the threads running during
                data collection.
                It displays the samples collected with respect to time for a
                single event.




     Ver. 1.0                                                         Slide 12 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Using Sampling (Contd.)


                You can use the Over Time view to gather the following
                information:
                – Context switching: Enables you to determine if there is
                  excessive context switching
                – Processor utilization: Enables you to identify which
                  processors are idle at what times
                – Temporal location of hotspots: Enables you to view the
                  specific periods of time when a large number of events
                  occurred
                – Thread interaction: Enables you to view the number of
                  threads in an application but not how they interact with each
                  other




     Ver. 1.0                                                            Slide 13 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Just a minute


                Which wizard in sampling allows you to create an Activity
                and configure the sampling collector to profile any type of
                application?




                Answer:
                   Sampling wizard



     Ver. 1.0                                                         Slide 14 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Activity: Performing Event-Based Sampling – 1


                Problem Statement:
                   John has created an application in Java which involves the use
                   of a two-dimensional matrix. However, he finds that his
                   application takes a long time to execute. Therefore, John
                   decides to analyze the performance of the application using the
                   event-based sampling (EBS) feature of VTune Performance
                   Analyzer. Help John accomplish this task.




     Ver. 1.0                                                            Slide 15 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Activity: Performing Event-Based Sampling – 1 (Contd.)


                Solution
                   To analyze the performance of the application using EBS, you
                   need to perform the following tasks:
                    1. Configure EBS using the Sampling wizard.
                    2. Analyze sampling results.




     Ver. 1.0                                                           Slide 16 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Summary


                In this chapter, you learnt that:
                   Intel VTune Performance Analyzer is a powerful and
                   easy-to-use software-analysis tool.
                   VTune Performance Analyzer helps you identify and locate the
                   area of code in an application that shows the highest amount of
                   activity over a specific period.
                   VTune Performance Analyzer displays how an application
                   interacts with the OS or other software.
                   VTune Performance Analyzer provides a number of features,
                   which make it an efficient performance analysis tool. The
                   features are:
                       Sampling
                       Call graph
                       Counter monitor
                       Tuning assistant
                       Hotspots view

     Ver. 1.0                                                            Slide 17 of 18
Code Optimization and Performance Tuning Using Intel VTune
Installing Windows XP Professional Using Attended Installation

Summary (Contd.)


                  VTune Performance Analyzer provides flexible user interfaces
                  to manage and organize different windows.
                  Sampling is a process of collecting and testing a set of data for
                  relevant information and presenting the analyzed data in
                  statistical format.
                  Sampling helps you:
                    • Identify hotspots
                    • Identify bottlenecks
                – VTune Performance Analyzer provides two types of sampling
                  mechanisms to collect data. They are:
                – Time-based sampling (TBS): In TBS, the VTune Performance
                  Analyzer collects samples of an activity at regular intervals of
                  time.
                – Event-based sampling (EBS): In EBS, the VTune Performance
                  Analyzer collects samples of an activity at regular intervals of
                  processor event.

     Ver. 1.0                                                             Slide 18 of 18

More Related Content

Viewers also liked

CyberLab Work-EX Program
CyberLab Work-EX ProgramCyberLab Work-EX Program
CyberLab Work-EX ProgramVivek chan
 
02 intel v_tune_session_02
02 intel v_tune_session_0202 intel v_tune_session_02
02 intel v_tune_session_02Vivek chan
 
01 intel v_tune_session_01
01 intel v_tune_session_0101 intel v_tune_session_01
01 intel v_tune_session_01Vivek chan
 
Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013Intel Software Brasil
 

Viewers also liked (6)

CyberLab Work-EX Program
CyberLab Work-EX ProgramCyberLab Work-EX Program
CyberLab Work-EX Program
 
02 intel v_tune_session_02
02 intel v_tune_session_0202 intel v_tune_session_02
02 intel v_tune_session_02
 
01 intel v_tune_session_01
01 intel v_tune_session_0101 intel v_tune_session_01
01 intel v_tune_session_01
 
Intel VTune
Intel VTuneIntel VTune
Intel VTune
 
Cap Boucherie
Cap BoucherieCap Boucherie
Cap Boucherie
 
Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013Intel® VTune™ Amplifier - Intel Software Conference 2013
Intel® VTune™ Amplifier - Intel Software Conference 2013
 

Similar to 04 intel v_tune_session_05

04 intel v_tune_session_05
04 intel v_tune_session_0504 intel v_tune_session_05
04 intel v_tune_session_05Vivek chan
 
10 intel v_tune_session_14
10 intel  v_tune_session_1410 intel  v_tune_session_14
10 intel v_tune_session_14Niit Care
 
01 intel v_tune_session_01
01 intel v_tune_session_0101 intel v_tune_session_01
01 intel v_tune_session_01Niit Care
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13Niit Care
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13Vivek chan
 
07 intel v_tune_session_10
07 intel v_tune_session_1007 intel v_tune_session_10
07 intel v_tune_session_10Vivek chan
 
Intel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application ShowcaseIntel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application ShowcaseIntel IT Center
 
Performance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android DevicesPerformance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android DevicesIntel® Software
 
Debug, Analyze and Optimize Games with Intel Tools
Debug, Analyze and Optimize Games with Intel Tools Debug, Analyze and Optimize Games with Intel Tools
Debug, Analyze and Optimize Games with Intel Tools Matteo Valoriani
 
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Codemotion
 
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Codemotion
 
Develop, Deploy, and Innovate with Intel® Cluster Ready
Develop, Deploy, and Innovate with Intel® Cluster ReadyDevelop, Deploy, and Innovate with Intel® Cluster Ready
Develop, Deploy, and Innovate with Intel® Cluster ReadyIntel IT Center
 
Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 ProfilerTune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 ProfilerAbhijit Jana
 
14 ooad uml-19
14 ooad uml-1914 ooad uml-19
14 ooad uml-19Niit Care
 
Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1Rachel Phillips
 
【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh
【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh
【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYehMAKERPRO.cc
 
Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0
Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0
Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0Intel IT Center
 
Performance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity TestingPerformance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity TestingAkshay Patole
 
Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.Ankita Tiwari
 

Similar to 04 intel v_tune_session_05 (20)

04 intel v_tune_session_05
04 intel v_tune_session_0504 intel v_tune_session_05
04 intel v_tune_session_05
 
10 intel v_tune_session_14
10 intel  v_tune_session_1410 intel  v_tune_session_14
10 intel v_tune_session_14
 
01 intel v_tune_session_01
01 intel v_tune_session_0101 intel v_tune_session_01
01 intel v_tune_session_01
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13
 
07 intel v_tune_session_10
07 intel v_tune_session_1007 intel v_tune_session_10
07 intel v_tune_session_10
 
Intel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application ShowcaseIntel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application Showcase
 
Performance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android DevicesPerformance and Power Profiling on Intel Android Devices
Performance and Power Profiling on Intel Android Devices
 
Debug, Analyze and Optimize Games with Intel Tools
Debug, Analyze and Optimize Games with Intel Tools Debug, Analyze and Optimize Games with Intel Tools
Debug, Analyze and Optimize Games with Intel Tools
 
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
 
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
 
Develop, Deploy, and Innovate with Intel® Cluster Ready
Develop, Deploy, and Innovate with Intel® Cluster ReadyDevelop, Deploy, and Innovate with Intel® Cluster Ready
Develop, Deploy, and Innovate with Intel® Cluster Ready
 
Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 ProfilerTune Your ASP.NET Application Using Visual Studio 2010 Profiler
Tune Your ASP.NET Application Using Visual Studio 2010 Profiler
 
Load Runner
Load RunnerLoad Runner
Load Runner
 
14 ooad uml-19
14 ooad uml-1914 ooad uml-19
14 ooad uml-19
 
Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1
 
【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh
【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh
【視覺進化論】AI智慧視覺運算技術論壇_2_ChungYeh
 
Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0
Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0
Intel® Xeon® Processor E7-8800/4800 v4 EAMG 2.0
 
Performance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity TestingPerformance Testing using Jmeter and Capacity Testing
Performance Testing using Jmeter and Capacity Testing
 
Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.Design the implementation of CDEx Robust DC Motor.
Design the implementation of CDEx Robust DC Motor.
 

More from Niit Care (20)

Ajs 1 b
Ajs 1 bAjs 1 b
Ajs 1 b
 
Ajs 4 b
Ajs 4 bAjs 4 b
Ajs 4 b
 
Ajs 4 a
Ajs 4 aAjs 4 a
Ajs 4 a
 
Ajs 4 c
Ajs 4 cAjs 4 c
Ajs 4 c
 
Ajs 3 b
Ajs 3 bAjs 3 b
Ajs 3 b
 
Ajs 3 a
Ajs 3 aAjs 3 a
Ajs 3 a
 
Ajs 3 c
Ajs 3 cAjs 3 c
Ajs 3 c
 
Ajs 2 b
Ajs 2 bAjs 2 b
Ajs 2 b
 
Ajs 2 a
Ajs 2 aAjs 2 a
Ajs 2 a
 
Ajs 2 c
Ajs 2 cAjs 2 c
Ajs 2 c
 
Ajs 1 a
Ajs 1 aAjs 1 a
Ajs 1 a
 
Ajs 1 c
Ajs 1 cAjs 1 c
Ajs 1 c
 
Dacj 4 2-c
Dacj 4 2-cDacj 4 2-c
Dacj 4 2-c
 
Dacj 4 2-b
Dacj 4 2-bDacj 4 2-b
Dacj 4 2-b
 
Dacj 4 2-a
Dacj 4 2-aDacj 4 2-a
Dacj 4 2-a
 
Dacj 4 1-c
Dacj 4 1-cDacj 4 1-c
Dacj 4 1-c
 
Dacj 4 1-b
Dacj 4 1-bDacj 4 1-b
Dacj 4 1-b
 
Dacj 4 1-a
Dacj 4 1-aDacj 4 1-a
Dacj 4 1-a
 
Dacj 1-2 b
Dacj 1-2 bDacj 1-2 b
Dacj 1-2 b
 
Dacj 1-3 c
Dacj 1-3 cDacj 1-3 c
Dacj 1-3 c
 

Recently uploaded

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

Recently uploaded (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

04 intel v_tune_session_05

  • 1. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Objectives During this session you will learn to: Identify the features of VTune Performance Analyzer Identify hotspots and bottlenecks in an application using sampling Ver. 1.0 Slide 1 of 18
  • 2. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Exploring VTune Performance Analyzer VTune Performance is a powerful and easy-to-use software-analysis tool. It collects, analyses, and displays performance data for a wide variety of applications. It can be used to identify and locate the code snippets in your application that show the highest amount of activity over a specific period. It also displays how an application interacts with the OS or other software, such as drivers. Ver. 1.0 Slide 2 of 18
  • 3. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Features of VTune Performance Analyzer Various features of VTune Performance Analyzer are as follows: ► Sampling Calculates the actual performance of the system over a period and for ► Call graph Provides a graphical view of the flow of various processor events an application and helps you identify ► Counter monitor Provides system-level performancein the critical functions and timing details information, such as resource ► Tuning assistant application Provides tuning advice from an analysis consumption, during the execution of an of the performance data. The tuning ► Hotspots view application Helps identifyyou improve code that takes advice helps the area of performance the maximum CPU time of an application Ver. 1.0 Slide 3 of 18
  • 4. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Working With VTune User Interface VTune Performance Analyzer provides flexible user interfaces. Using these interfaces, you can manage and organize various windows and analyze views, according to your requirements. Ver. 1.0 Slide 4 of 18
  • 5. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Working With VTune User Interface (Contd.) • Tuning andData viewsMenus window displays messages Menus browser: The display analysis data in displays Data view: toolbars: Tuning Browser window various Output window: The Output and toolbars provide easy a list of the contents of a project. This window enables you to access to formats. the common commands during data collection and analysis.of the VTune view the result of activities. The Tuning Browser window Performance Analyzer. Using these commands, you can also enables you to use all the activities related to the access the information that the VTune Performance project. provides. Analyzer Ver. 1.0 Slide 5 of 18
  • 6. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Just a minute Which data view displays all the threads that run within a selected process? Which data view enables you to pinpoint problem areas in the code? Answer: Thread view Source view Ver. 1.0 Slide 6 of 18
  • 7. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Identifying Wizards in VTune The different wizards available in VTune Performance Analyzer are displayed in the following table. Name Description Quick Performance Analysis It enables you to quickly analyze your application's performance. (QPA) wizard This wizard enables you to create an activity with any combination of sampling, counter monitor, and call graph collectors. Complete setup wizard It enables you to create an activity and configure multiple collectors at the same time. The wizard prompts you to enter values only for the basic parameters and uses default values for others. Counter monitor wizard It enables you to create an activity and configure the counter monitor data collector. The wizard prompts you to enter values only for the basic parameters, and uses default values for others. Ver. 1.0 Slide 7 of 18
  • 8. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Identifying Wizards in VTune (Contd.) The different wizards available in VTune Performance Analyzer are displayed in the following table. Name Description Sampling wizard It enables you to create an activity and configure the sampling collector to profile any type of application. The wizard prompts you to enter values for the basic parameters and uses default values for others. Call graph wizard It enables you to create an activity and configure the call graph data collector to profile any type of application. The wizard prompts you to enter values for the basic parameters and uses default values for others. Advanced Activity It enables you to control all the steps of activity creation and Configuration wizard configuration. You can add multiple data collectors and configure them. You can also add application/module profiles to an activity and associate them with any of the data collectors. Use the Advanced Activity Configuration option offers more flexibility in activity creation. Ver. 1.0 Slide 8 of 18
  • 9. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Using Sampling Sampling is the process of collecting a set of data for analysis and representing the analyzed data in statistical format. Sampling enables you to: ► Identify hotspots Hotspot is the section of code ► Identify bottlenecks that takes a long time to Bottleneck is the area of code execute. that slows down the execution It consumes a large amount of of the application. processor time. All bottlenecks are hotspots but all hotspots are not bottlenecks. Ver. 1.0 Slide 9 of 18
  • 10. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Using Sampling (Contd.) When you perform an activity by using time-based sampling, the VTune Performance Analyzer: Executes the application you have launched Stops the processor at the sampling interval and collects samples of the specified application Stores sampling data in the buffer. When the buffer is full, it stops sampling. The VTune Performance Analyzer then writes the sampling data to the disk and resumes sampling Continues to collect sampling data until the specified application terminates or the specified sampling duration ends Analyzes the collected data, creates an activity result in the Tuning Browser window, and displays the total data collected for each module Ver. 1.0 Slide 10 of 18
  • 11. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Using Sampling (Contd.) Event Based Sampling (EBS) is performed on the processor events. EBS enables you to determine which process, thread, module, function, or code line in the application is generating the largest number of processor events. Ver. 1.0 Slide 11 of 18
  • 12. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Using Sampling (Contd.) Sampling over time view shows the threads running during data collection. It displays the samples collected with respect to time for a single event. Ver. 1.0 Slide 12 of 18
  • 13. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Using Sampling (Contd.) You can use the Over Time view to gather the following information: – Context switching: Enables you to determine if there is excessive context switching – Processor utilization: Enables you to identify which processors are idle at what times – Temporal location of hotspots: Enables you to view the specific periods of time when a large number of events occurred – Thread interaction: Enables you to view the number of threads in an application but not how they interact with each other Ver. 1.0 Slide 13 of 18
  • 14. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Just a minute Which wizard in sampling allows you to create an Activity and configure the sampling collector to profile any type of application? Answer: Sampling wizard Ver. 1.0 Slide 14 of 18
  • 15. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Activity: Performing Event-Based Sampling – 1 Problem Statement: John has created an application in Java which involves the use of a two-dimensional matrix. However, he finds that his application takes a long time to execute. Therefore, John decides to analyze the performance of the application using the event-based sampling (EBS) feature of VTune Performance Analyzer. Help John accomplish this task. Ver. 1.0 Slide 15 of 18
  • 16. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Activity: Performing Event-Based Sampling – 1 (Contd.) Solution To analyze the performance of the application using EBS, you need to perform the following tasks: 1. Configure EBS using the Sampling wizard. 2. Analyze sampling results. Ver. 1.0 Slide 16 of 18
  • 17. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Summary In this chapter, you learnt that: Intel VTune Performance Analyzer is a powerful and easy-to-use software-analysis tool. VTune Performance Analyzer helps you identify and locate the area of code in an application that shows the highest amount of activity over a specific period. VTune Performance Analyzer displays how an application interacts with the OS or other software. VTune Performance Analyzer provides a number of features, which make it an efficient performance analysis tool. The features are: Sampling Call graph Counter monitor Tuning assistant Hotspots view Ver. 1.0 Slide 17 of 18
  • 18. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Summary (Contd.) VTune Performance Analyzer provides flexible user interfaces to manage and organize different windows. Sampling is a process of collecting and testing a set of data for relevant information and presenting the analyzed data in statistical format. Sampling helps you: • Identify hotspots • Identify bottlenecks – VTune Performance Analyzer provides two types of sampling mechanisms to collect data. They are: – Time-based sampling (TBS): In TBS, the VTune Performance Analyzer collects samples of an activity at regular intervals of time. – Event-based sampling (EBS): In EBS, the VTune Performance Analyzer collects samples of an activity at regular intervals of processor event. Ver. 1.0 Slide 18 of 18

Editor's Notes

  1. Share the objectives with the students. Ask the following recap questions from the students before proceeding to the next slide: What is a bottleneck? What is a hotspot?
  2. Explain about VTune Performance Analyzer as shown on the slide. Explain that VTune is a tool by Intel that is used for performance tuning. Mention that VTune can be used to collect system wide data and application specific data.
  3. Discuss various features of VTune Performance Analyzer with the help of the animations given in the slide. While explaining about tuning assistant, explain that tuning advice is available only with event-based sampling and counter monitor.
  4. In this slide and the next slide, discuss various interfaces of VTune Performance Analyzer.
  5. In this side and the next slide, discuss various wizards available in Intel VTune Performance Analyzer. Tell the students that the Advanced Activity Configuration wizard offers the maximum flexibility to the user. Explain the students that before starting analyzing an application using VTune Performance Analyzer they need to ensure that they have the following files: Binary program: Enables to launch and analyze the performance of an application and display disassembly code. The binary program is an executable file, for example, .exe, .obj, .ocx, .dll, or .VxD file. Symbol information: Enables instrumentation in call graph, display of hotspot, source, and assembly views. Symbol information is a file that contains line number and symbol information. For example: .pdb, .dbg and .sym are symbol information formats. Source file: In order to view source code of an application, the source files must be available in your system.
  6. Ask students what is meant by Sampling? Ans: Sampling is a process that collects the data about the state of the system at particular instances of time. This is done by sending interrupts to the processor, and collecting data. Using Vtune you can specify if you would need to perform time based or event based sampling. Sampling collects system level data such as the operating system, Java application, .NET application, and device drivers. Sampling has a low overhead. If you check the checkbox, No Application to launch, while sampling, then system wide data is collected. Sampling interrupts the processor after a certain number of processor events and records the execution information in a buffer area. This buffer area is called Sampling Buffer. The user can modify the size of the buffer. Ask the students to explore VTune Help, for detailed information. When the buffer is full, the information is copied to a file. After saving the information, the program resumes operation. Thus, the VTune Performance Analyzer maintains very low overhead while sampling. Sampling is a feature of VTune Performance Analyzer that non-intrusively collects information about applications, drivers, operating system modules, and other running applications on a computer. Non intrusive means that it does not instrument the code of an application and modify binary file or executable in order to monitor the performance of the application. Application performance is not impacted in any way. When explaining about sampling discuss that sampling helps to identify the hotspots and bottlenecks in an application.
  7. Time based sampling is used to collect samples of an Activity at regular intervals. TBS uses the Operating System (OS) timer to calculate the time interval for collecting samples. The default time interval is 1 milli second (ms). The collected samples display the performance data of all the processes running on the computer. The process that takes the longest time to execute contains the largest number of samples.
  8. While TBS is performed on the basis of OS time, EBS is performed on processor events. Events could be Cache Miss, or Branch misprediction, or many more. Using EBS, you can determine which process, thread, module, function, or code line in the application is generating the largest number of processor events. In the Configure Sampling dialog box, on the Events tab, you can choose from the list of available events. Use VTune Help to explore each event.
  9. Initiate the discussion about Sampling Over Time view by explaining the students that the sampling view shows the threads running during data collection but Sampling Over Time view shows the threads ran in parallel or serially. The Sampling Over Time view displays the samples collected with respect to time for a single event. The Sampling Over Time view also enables to identify when and which threads are running serially and in parallel. Explain the students that Sampling Over Time view can be invoked for Thread, Process, and Module views. Explain the students that they can perform Sampling Over Time view for different views by selecting an event and clicking on the Display Over Time View icon in the sampling toolbar. After that they need to click on Process, Thread, or Module view. You can view the samples collected for the selected items over the entire period of time the activity executed.   The Sampling Over time view consists of two panels: the left and the right pane. The left panel displays the names of the selected items and the right panel displays the samples collected over time.
  10. Explain the students that the Over Time view to gather the following information: Processor utilization: Enables you to identify which processors are idle at what times. Also explain the students that a processor is idle if Clockticks samples are collected for the System Process or idle thread. Temporal location of hotspots: Enables you to view the specific periods of time when a large number of events occurred. Thread interaction: Enables you to view the number of threads in an application but not how they interact with each other. While explaining these to the students give the example that a significant number of cache misses may occur in the second half of the workload and no cache misses in the first half. If you notice a temporal hotspot such as this one, you can select this area, click Zoom In, and click Display Regular Sampling View for Selected Time-range to drill-down to the specific area of the sampling view where there were a lot of cache misses.
  11. To demonstrate this activity, you can use the data files provided at the following locations: TIRM  Datafiles for Faculty  Chapter4  Activity1  Matrix Class.zip Matrix Class.zip file contains the optimized and the unoptimized codes. The faculty should first show the demonstration of the unoptimized code. After analyzing the sampling results, the faculty should again run the activity using the optimized code. This would enable the students comparing the sampling results between the optimized and the unoptimized code.
  12. To demonstrate this activity, you can use the data files provided at the following locations: TIRM  Datafiles for Faculty  Chapter4  Activity1  Matrix Class.zip Matrix Class.zip file contains the optimized and the unoptimized codes. The faculty should first show the demonstration of the unoptimized code. After analyzing the sampling results, the faculty should again run the activity using the optimized code. This would enable the students comparing the sampling results between the optimized and the unoptimized code.
  13. Summarize the session.
  14. Summarize the session.