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

Objectives


                In this session, you will learn to:
                   Use the Tuning Assistant




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

Using Tuning Assistant


                Tuning assistant is a tool that provides with information that
                enables you to tune the performance of your application and
                the way it uses system resources.




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

Understanding the Tuning Methodology


                Once the optimization goals are clear, you can tune your
                application at the following three levels:
                   System-level tuning
                   Application-level tuning
                   Microarchitecture-level tuning




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

Understanding the Tuning Methodology (Contd.)


                System-level tuning:
                   Helps in optimizing the utilization of system resources.
                   Speeds up the performance of the application by improving the
                   way application interacts with the system.
                   Is significant for input/output (I/O) intensive applications. The
                   performance of these applications depends on the
                   performance of the I/O system that provides the I/O service.
                   Can be achieved by using the counter monitor feature of
                   VTune Performance Analyzer.




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

Understanding the Tuning Methodology (Contd.)


                Application-level tuning:
                   Helps in reducing the execution time of an application.
                   Can be performed by improving the algorithms of the
                   application, implementing threads, and by using Application
                   Programming Interfaces (APIs) and primitives.
                   Can be achieved by identifying the code snippets that have a
                   high impact on the performance of the application.
                   Helps in identifying the code snippets by using the sampling or
                   call graph feature of the VTune Performance Analyzer.




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

Understanding the Tuning Methodology (Contd.)


                Microarchitecture-level tuning:
                   Increases the performance of an application by improving the
                   way an application runs on the processor.
                   Can be used with processor-intensive applications
                     • If an application is not processor-intensive, then you should first
                       improve processor utilization by using system-level and
                       application-level tuning.
                 – Can be achieved by using the sampling feature of VTune
                   Performance Analyzer.




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

Just a minute


                Which level of tuning methodology will you use for       I/
                O-intensive application?
                Which level of tuning methodology will you use for a
                process-intensive application?
                Which level of tuning methodology will you use to reduce
                the execution time of an application?




                Answer:
                   System-level tuning
                   Microarchitecture-level tuning
                   Application-level tuning

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

Tuning Methodology for Specific Goals


                It is a good practice to start tuning an application at the
                system-level to avoid any system-level bottlenecks.
                Once you ensure that the processor utilization is high, then
                you can focus on removing the application-level bottlenecks
                followed by microarchitecture-level bottlenecks.
                If you are not sure about the specific goals, then you should
                follow the following sequence in order to achieve the best
                performance of an application in the shortest possible time:
                   System-level
                   Application-level
                   Microarchitecture-level




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

Tuning Methodology for Specific Goals (Contd.)


                There are three main strategies to improve the performance
                of an application.
                Each strategy affects processor utilization in a different way:
                ►       Balancing I/O and computation
                ►       Improving the threading model
                ►       Improving the efficiency of computation

                                                     to:
                        This strategy enables you to speed up the
                        application when the to a single threaded
                           • Add multithreading processor utilization is
                        low. application
                        This Improve the threading modelspeed up the
                               strategy enables you to of a
                        In• this case, you need to make changes at
                        application by accomplishing the same amount
                        the system-level application
                              multithreaded
                            work using to and the application-level.
                        ofenables youless computations.use of
                    •   It                  make effective
                        In this case, you need to make changes at the
                        system resources.
                    •   application-level and microarchitecture-level
                        In this case, you need to make changes at
                        the application-level.




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

Launching Tuning Assistant


                Tuning assistant:
                   Helps you to get more insight into the performance issues in an
                   application and identify the hotspots where performance can
                   be improved.
                   Provides you with the possible solutions to remove or avoid a
                   performance issue.
                   Provides tuning advice for codes, processes, or time ranges
                   that you select in the source, sampling, or counter monitor
                   views.




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

Launching Tuning Assistant (Contd.)


                The different types of advice that tuning assistant can
                provide are:
                   Sampling-based advice
                   Counter monitor-based advice
                   Source-based tuning advice
                   Static assembly penalties




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

Activity: Launching the Tuning Assistant


                Problem Statement:
                   Chris has developed an application in C# that creates a list of
                   natural numbers and displays their sum. However, on
                   execution, the application runs very slowly. To analyze
                   performance of his application, Chris decides to analyze his
                   application using the counter monitor feature of Intel VTune
                   Performance Analyzer and use Tuning Assistant to identify the
                   performance issues and propose possible solutions for the
                   issues. Help Chris perform the required task.




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

Activity: Launching the Tuning Assistant (Contd.)


                Solution
                   To analyze counter data and use Tuning Assistant to identify
                   system-related performance issues and propose possible
                   solutions for the issues, you need to perform the following
                   tasks:
                    1. Collect counter monitor data.
                    2. Launch Tuning Assistant.




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

Activity: Launching the Tuning Assistant (Contd.)


                Solution
                   The information that tuning assistant provides are as follows:
                       Insight
                       Relevance scale
                       Tuning assistant advice
                       Workload




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

Summary


                In this session, you learned that:
                   The Tuning Assistant tool of VTune Performance Analyzer
                   tunes the performance of applications.
                   You can tune the application at the following three levels:
                      • System-Level tuning
                      • Application-Level tuning
                      • Microarchitecture-Level tuning
                   It is a good practice to start tuning an application at the system
                   level instead of microarchitecture level.
                   Three main strategies to improve the performance of an
                   application are:
                         Balancing I/O and computation
                         Improving the threading model
                         Improving the efficiency of computation


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

Summary


                The tuning assistant helps you to get more insight into the
                performance issues in an application and identify the hotspots
                where performance can be improved.
                The different types of advice that Tuning Assistant can
                generate are:
                    Sampling-based advice
                    Counter monitor-based advice
                    Source-based tuning advice
                    Static assembly penalties




     Ver. 1.0                                                          Slide 16 of 16

More Related Content

What's hot

CYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITY
CYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITYCYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITY
CYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITY
ViscolKanady
 
Antivirus Scanning Performance and System Resource Utilization Comparison
Antivirus Scanning Performance and System Resource Utilization ComparisonAntivirus Scanning Performance and System Resource Utilization Comparison
Antivirus Scanning Performance and System Resource Utilization Comparison
GFI Software
 
Comp tia a+_session_09
Comp tia a+_session_09Comp tia a+_session_09
Comp tia a+_session_09Niit Care
 
Comp tia a+_session_08
Comp tia a+_session_08Comp tia a+_session_08
Comp tia a+_session_08Niit Care
 
Gonzo - Increasing Agility by Understanding Risk
Gonzo - Increasing Agility by Understanding RiskGonzo - Increasing Agility by Understanding Risk
Gonzo - Increasing Agility by Understanding Risk
croomes
 
Chapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test AutomationChapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test Automation
Neeraj Kumar Singh
 
ANTIVIRUS
ANTIVIRUSANTIVIRUS
ANTIVIRUS
fauscha
 
Comp tia a+_session_04
Comp tia a+_session_04Comp tia a+_session_04
Comp tia a+_session_04Niit Care
 
Comp tia a+_session_06
Comp tia a+_session_06Comp tia a+_session_06
Comp tia a+_session_06Niit Care
 
Ch15-Software Engineering 9
Ch15-Software Engineering 9Ch15-Software Engineering 9
Ch15-Software Engineering 9Ian Sommerville
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and Environment
Neeraj Kumar Singh
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle
Neeraj Kumar Singh
 
ISTQB - Foundation level testing topics
ISTQB - Foundation level testing topicsISTQB - Foundation level testing topics
ISTQB - Foundation level testing topics
Shan Kings
 
4213ijsea06
4213ijsea064213ijsea06
4213ijsea06
ijseajournal
 
White-box Testing: When Quality Really Matters
White-box Testing: When Quality Really MattersWhite-box Testing: When Quality Really Matters
White-box Testing: When Quality Really Matters
TechWell
 
Case study on testing
Case study on testingCase study on testing
Case study on testingShivani Joshi
 
Comp tia a+_session_07
Comp tia a+_session_07Comp tia a+_session_07
Comp tia a+_session_07Niit Care
 
Lenovo High Availability Solutions Brief
Lenovo High Availability Solutions BriefLenovo High Availability Solutions Brief
Lenovo High Availability Solutions Brief
DataCore Software
 
Application Testing
Application TestingApplication Testing
Application Testing
Reggie Niccolo Santos
 

What's hot (20)

CYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITY
CYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITYCYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITY
CYBERSECURITY PROCESSES & TECHNOLOGIES LAB #2: MANAGING HOST BASED SECURITY
 
Antivirus Scanning Performance and System Resource Utilization Comparison
Antivirus Scanning Performance and System Resource Utilization ComparisonAntivirus Scanning Performance and System Resource Utilization Comparison
Antivirus Scanning Performance and System Resource Utilization Comparison
 
Comp tia a+_session_09
Comp tia a+_session_09Comp tia a+_session_09
Comp tia a+_session_09
 
Comp tia a+_session_08
Comp tia a+_session_08Comp tia a+_session_08
Comp tia a+_session_08
 
Gonzo - Increasing Agility by Understanding Risk
Gonzo - Increasing Agility by Understanding RiskGonzo - Increasing Agility by Understanding Risk
Gonzo - Increasing Agility by Understanding Risk
 
Chapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test AutomationChapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test Automation
 
ANTIVIRUS
ANTIVIRUSANTIVIRUS
ANTIVIRUS
 
Comp tia a+_session_04
Comp tia a+_session_04Comp tia a+_session_04
Comp tia a+_session_04
 
Comp tia a+_session_06
Comp tia a+_session_06Comp tia a+_session_06
Comp tia a+_session_06
 
Ch15-Software Engineering 9
Ch15-Software Engineering 9Ch15-Software Engineering 9
Ch15-Software Engineering 9
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and Environment
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle
 
ISTQB - Foundation level testing topics
ISTQB - Foundation level testing topicsISTQB - Foundation level testing topics
ISTQB - Foundation level testing topics
 
4213ijsea06
4213ijsea064213ijsea06
4213ijsea06
 
White-box Testing: When Quality Really Matters
White-box Testing: When Quality Really MattersWhite-box Testing: When Quality Really Matters
White-box Testing: When Quality Really Matters
 
Fault tolerance
Fault toleranceFault tolerance
Fault tolerance
 
Case study on testing
Case study on testingCase study on testing
Case study on testing
 
Comp tia a+_session_07
Comp tia a+_session_07Comp tia a+_session_07
Comp tia a+_session_07
 
Lenovo High Availability Solutions Brief
Lenovo High Availability Solutions BriefLenovo High Availability Solutions Brief
Lenovo High Availability Solutions Brief
 
Application Testing
Application TestingApplication Testing
Application Testing
 

Similar to 07 intel v_tune_session_10

07 intel v_tune_session_10
07 intel v_tune_session_1007 intel v_tune_session_10
07 intel v_tune_session_10
Vivek 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
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13
Vivek chan
 
05 intel v_tune_session_07
05 intel v_tune_session_0705 intel v_tune_session_07
05 intel v_tune_session_07Niit 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
 
01 intel v_tune_session_01
01 intel v_tune_session_0101 intel v_tune_session_01
01 intel v_tune_session_01
Vivek chan
 
Intel VTune
Intel VTuneIntel VTune
Intel VTune
Vikram Singh Saini
 
02 intel v_tune_session_02
02 intel v_tune_session_0202 intel v_tune_session_02
02 intel v_tune_session_02
Vivek chan
 
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
 
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP ProgrammingHetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Intel® Software
 
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
Intel IT Center
 
Software Fault Tolerance
Software Fault ToleranceSoftware Fault Tolerance
Software Fault Tolerance
Ankit Singh
 
AIDC India - AI on IA
AIDC India  - AI on IAAIDC India  - AI on IA
AIDC India - AI on IA
Intel® Software
 
Chapter 7
Chapter 7Chapter 7
Chapter 7
Amit Gandhi
 
04 intel v_tune_session_05
04 intel v_tune_session_0504 intel v_tune_session_05
04 intel v_tune_session_05
Vivek chan
 
Ch21.pptx
Ch21.pptxCh21.pptx
Ch21.pptx
MohammedNouh7
 
03 intel v_tune_session_04
03 intel v_tune_session_0403 intel v_tune_session_04
03 intel v_tune_session_04
Vivek chan
 
Ansible.pptx
Ansible.pptxAnsible.pptx
Ansible.pptx
rajuklp1
 

Similar to 07 intel v_tune_session_10 (20)

07 intel v_tune_session_10
07 intel v_tune_session_1007 intel v_tune_session_10
07 intel v_tune_session_10
 
10 intel v_tune_session_14
10 intel  v_tune_session_1410 intel  v_tune_session_14
10 intel v_tune_session_14
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13
 
05 intel v_tune_session_07
05 intel v_tune_session_0705 intel v_tune_session_07
05 intel v_tune_session_07
 
09 intel v_tune_session_13
09 intel v_tune_session_1309 intel v_tune_session_13
09 intel v_tune_session_13
 
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
 
02 intel v_tune_session_02
02 intel v_tune_session_0202 intel v_tune_session_02
02 intel v_tune_session_02
 
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...
 
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP ProgrammingHetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
 
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
 
Software Fault Tolerance
Software Fault ToleranceSoftware Fault Tolerance
Software Fault Tolerance
 
AIDC India - AI on IA
AIDC India  - AI on IAAIDC India  - AI on IA
AIDC India - AI on IA
 
Chapter 7
Chapter 7Chapter 7
Chapter 7
 
04 intel v_tune_session_05
04 intel v_tune_session_0504 intel v_tune_session_05
04 intel v_tune_session_05
 
Ch21.pptx
Ch21.pptxCh21.pptx
Ch21.pptx
 
03 intel v_tune_session_04
03 intel v_tune_session_0403 intel v_tune_session_04
03 intel v_tune_session_04
 
Ansible.pptx
Ansible.pptxAnsible.pptx
Ansible.pptx
 

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

State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 

Recently uploaded (20)

State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 

07 intel v_tune_session_10

  • 1. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Objectives In this session, you will learn to: Use the Tuning Assistant Ver. 1.0 Slide 1 of 16
  • 2. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Using Tuning Assistant Tuning assistant is a tool that provides with information that enables you to tune the performance of your application and the way it uses system resources. Ver. 1.0 Slide 2 of 16
  • 3. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Understanding the Tuning Methodology Once the optimization goals are clear, you can tune your application at the following three levels: System-level tuning Application-level tuning Microarchitecture-level tuning Ver. 1.0 Slide 3 of 16
  • 4. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Understanding the Tuning Methodology (Contd.) System-level tuning: Helps in optimizing the utilization of system resources. Speeds up the performance of the application by improving the way application interacts with the system. Is significant for input/output (I/O) intensive applications. The performance of these applications depends on the performance of the I/O system that provides the I/O service. Can be achieved by using the counter monitor feature of VTune Performance Analyzer. Ver. 1.0 Slide 4 of 16
  • 5. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Understanding the Tuning Methodology (Contd.) Application-level tuning: Helps in reducing the execution time of an application. Can be performed by improving the algorithms of the application, implementing threads, and by using Application Programming Interfaces (APIs) and primitives. Can be achieved by identifying the code snippets that have a high impact on the performance of the application. Helps in identifying the code snippets by using the sampling or call graph feature of the VTune Performance Analyzer. Ver. 1.0 Slide 5 of 16
  • 6. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Understanding the Tuning Methodology (Contd.) Microarchitecture-level tuning: Increases the performance of an application by improving the way an application runs on the processor. Can be used with processor-intensive applications • If an application is not processor-intensive, then you should first improve processor utilization by using system-level and application-level tuning. – Can be achieved by using the sampling feature of VTune Performance Analyzer. Ver. 1.0 Slide 6 of 16
  • 7. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Just a minute Which level of tuning methodology will you use for I/ O-intensive application? Which level of tuning methodology will you use for a process-intensive application? Which level of tuning methodology will you use to reduce the execution time of an application? Answer: System-level tuning Microarchitecture-level tuning Application-level tuning Ver. 1.0 Slide 7 of 16
  • 8. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Tuning Methodology for Specific Goals It is a good practice to start tuning an application at the system-level to avoid any system-level bottlenecks. Once you ensure that the processor utilization is high, then you can focus on removing the application-level bottlenecks followed by microarchitecture-level bottlenecks. If you are not sure about the specific goals, then you should follow the following sequence in order to achieve the best performance of an application in the shortest possible time: System-level Application-level Microarchitecture-level Ver. 1.0 Slide 8 of 16
  • 9. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Tuning Methodology for Specific Goals (Contd.) There are three main strategies to improve the performance of an application. Each strategy affects processor utilization in a different way: ► Balancing I/O and computation ► Improving the threading model ► Improving the efficiency of computation to: This strategy enables you to speed up the application when the to a single threaded • Add multithreading processor utilization is low. application This Improve the threading modelspeed up the strategy enables you to of a In• this case, you need to make changes at application by accomplishing the same amount the system-level application multithreaded work using to and the application-level. ofenables youless computations.use of • It make effective In this case, you need to make changes at the system resources. • application-level and microarchitecture-level In this case, you need to make changes at the application-level. Ver. 1.0 Slide 9 of 16
  • 10. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Launching Tuning Assistant Tuning assistant: Helps you to get more insight into the performance issues in an application and identify the hotspots where performance can be improved. Provides you with the possible solutions to remove or avoid a performance issue. Provides tuning advice for codes, processes, or time ranges that you select in the source, sampling, or counter monitor views. Ver. 1.0 Slide 10 of 16
  • 11. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Launching Tuning Assistant (Contd.) The different types of advice that tuning assistant can provide are: Sampling-based advice Counter monitor-based advice Source-based tuning advice Static assembly penalties Ver. 1.0 Slide 11 of 16
  • 12. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Activity: Launching the Tuning Assistant Problem Statement: Chris has developed an application in C# that creates a list of natural numbers and displays their sum. However, on execution, the application runs very slowly. To analyze performance of his application, Chris decides to analyze his application using the counter monitor feature of Intel VTune Performance Analyzer and use Tuning Assistant to identify the performance issues and propose possible solutions for the issues. Help Chris perform the required task. Ver. 1.0 Slide 12 of 16
  • 13. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Activity: Launching the Tuning Assistant (Contd.) Solution To analyze counter data and use Tuning Assistant to identify system-related performance issues and propose possible solutions for the issues, you need to perform the following tasks: 1. Collect counter monitor data. 2. Launch Tuning Assistant. Ver. 1.0 Slide 13 of 16
  • 14. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Activity: Launching the Tuning Assistant (Contd.) Solution The information that tuning assistant provides are as follows: Insight Relevance scale Tuning assistant advice Workload Ver. 1.0 Slide 14 of 16
  • 15. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Summary In this session, you learned that: The Tuning Assistant tool of VTune Performance Analyzer tunes the performance of applications. You can tune the application at the following three levels: • System-Level tuning • Application-Level tuning • Microarchitecture-Level tuning It is a good practice to start tuning an application at the system level instead of microarchitecture level. Three main strategies to improve the performance of an application are: Balancing I/O and computation Improving the threading model Improving the efficiency of computation Ver. 1.0 Slide 15 of 16
  • 16. Code Optimization and Performance Tuning Using Intel VTune Installing Windows XP Professional Using Attended Installation Summary The tuning assistant helps you to get more insight into the performance issues in an application and identify the hotspots where performance can be improved. The different types of advice that Tuning Assistant can generate are: Sampling-based advice Counter monitor-based advice Source-based tuning advice Static assembly penalties Ver. 1.0 Slide 16 of 16

Editor's Notes

  1. Share the objective with the student.
  2. VTune analyzes the data of applications, identifies hotspots in the code and Tuning Assistant provides you suggestions and advice to write that segment of the code efficiently. This reduces the time it takes to execute the code and run the code with the best possible performance.
  3. Tell the students that it is important to set your optimization goals before you start tuning your application. Tell the students about different levels at which the application can be optimized.
  4. In this slide, discuss about the system-level tuning.
  5. In this slide, discuss about the application-level tuning.
  6. In this slide, discuss about the microarchitecture-level tuning.
  7. Tell the students that it is advisable to start tuning your application at system-level. This would enable you to achieve the best performance results. For example, if the processor utilization on your system is low and you start tuning your application at the application level. In this case, you might not be able to achieve the best optimization results. However, if you first tune your application at the system-level, then you can increase the processor utilization. Once the processor utilization is high, then tuning your application at the application level would lead to better optimization results.
  8. In this slide, discuss the three main strategies for improving the processor utilization.
  9. In this slide, discuss how does the Tuning Assistant enables you to get more insight into the performance issues and helps optimizing your application.
  10. In this slide, explain the students about different types of advice a Tuning Assistant provides.
  11. To demonstrate this activity, you can use the data files provided at the following locations: TIRM  Datafiles for Faculty  Chapter05  Activity01  Natural_Numbers_Sum.zip Natural_Numbers_Sum.zip file contains the optimized and the unoptimized codes. The faculty should first show the demonstration of the unoptimized code. After launching the tuning assistant, the faculty should again run the activity using the optimized code. This would enable the students comparing the results between the optimized and the unoptimized code. In the unoptimized code, the sum of the numbers present in the huge array list is computed in advanced. In this case, when the application prompts the user asking whether to view the sum or not, and the user enters n, the application exits. As a result, the sum has already been computed even if it is not required. However, this is not so in the case of the optimized code. In the optimized code given for the preceding activity, the sum of the huge list of numbers is calculated only when the user wishes to view the sum by entering y.
  12. To demonstrate this activity, you can use the data files provided at the following locations: TIRM  Datafiles for Faculty  Chapter05  Activity01  Natural_Numbers_Sum.zip Natural_Numbers_Sum.zip file contains the optimized and the unoptimized codes. The faculty should first show the demonstration of the unoptimized code. After launching the tuning assistant, the faculty should again run the activity using the optimized code. This would enable the students comparing the results between the optimized and the unoptimized code. In the unoptimized code, the sum of the numbers present in the huge array list is computed in advanced. In this case, when the application prompts the user asking whether to view the sum or not, and the user enters n, the application exits. As a result, the sum has already been computed even if it is not required. However, this is not so in the case of the optimized code. In the optimized code given for the preceding activity, the sum of the huge list of numbers is calculated only when the user wishes to view the sum by entering y.
  13. To demonstrate this activity, you can use the data files provided at the following locations: TIRM  Datafiles for Faculty  Chapter05  Activity01  Natural_Numbers_Sum.zip Natural_Numbers_Sum.zip file contains the optimized and the unoptimized codes. The faculty should first show the demonstration of the unoptimized code. After launching the tuning assistant, the faculty should again run the activity using the optimized code. This would enable the students comparing the results between the optimized and the unoptimized code. In the unoptimized code, the sum of the numbers present in the huge array list is computed in advanced. In this case, when the application prompts the user asking whether to view the sum or not, and the user enters n, the application exits. As a result, the sum has already been computed even if it is not required. However, this is not so in the case of the optimized code. In the optimized code given for the preceding activity, the sum of the huge list of numbers is calculated only when the user wishes to view the sum by entering y.
  14. Summarize the session.
  15. Summarize the session.