Improving performance with the Windows Performance Toolkit

Slides:



Advertisements
Similar presentations
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements


© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Preface Demo A Quick Thank You How Did We Do It?
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Feature: OLE Notes Migration Utility
Session 1.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Connect with life Connect with life
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
demo Instance AInstance B Read “7” Write “8”

customer.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.

Wireless Communication and Networks
5/28/2018 9:16 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or.
6/10/ :23 PM TOOL-504T A deep dive into Visual Studio 11 Express for designing Metro style apps using XAML Joanna Mason & Unni Ravindranathan Program.
Developing Drivers in Visual Studio
Performance Sylvain Goyette Senior Program Manager WinHEC 2015
Building a great Metro style device app for your printer
Reducing the memory footprint of drivers and apps
Возможности Excel 2010, о которых следует знать
Maximizing Windows 7 Performance: Troubleshooting Tips
Understanding Wi-Fi Direct in Windows 8
11/8/2018 8:19 PM HW-98P Windows 8 kernel debugging: New protocols and certification requirements Tanya Radeva Program Manager Microsoft Corporation Joe.
Testing mobile broadband devices
Title of Presentation 11/22/2018 3:34 PM
Certifying graphics experiences on Windows 8
Michael Beck Principal Group Program Manager Microsoft Corporation
Title of Presentation 12/2/2018 3:48 PM
Search: integrating into the Windows 8 search experience
Customizing WPA Trace Views
Windows Phone application performance and optimization
Introducing Metro style device apps
28 days.
Introduction to the new WPA user interface
Create rich, data-driven Web apps with ASP.NET 4.5 Web Forms
Customizing ADK assessment reports
Best practices for packaging and distributing device drivers
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Delivering great hardware solutions for Windows
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
4/28/2019 6:13 PM HW-889P Advanced driver code analysis techniques Tips and tricks to develop more secure & reliable drivers Dave Sielaff Principal Software.
Under the hood: Installation and updates for Metro style apps
Build /4/ Diagnosing issues with Windows Phone 8.1 JavaScript apps using Visual Studio Andy Sterland Senior Program
Leveraging existing code in Metro style apps
PENSACOLA ENERGY WORK PLAN OCTOBER 10, 2016
Title of Presentation 5/12/ :53 PM
Шитманов Дархан Қаражанұлы Тарих пәнінің
5/16/2019 Windows Performance Jump Start Chell Sterioff Milad Aslaner Sr. Program Manager Premier Field Engineer Microsoft Corporation Microsoft.
Title of Presentation 5/24/2019 1:26 PM
5/24/2019 6:44 PM 1/8/18 Bell #10 In a world governed by the gods, is there any room for human will? Do human choices make a difference? EXPLAIN © 2007.
Using Smart Unit Tests to find bugs earlier in the development cycle
Inside the Windows 8 driver developer workflow
Title of Presentation 7/24/2019 8:53 PM
7/31/2019 9:47 AM HW-148P Scaling and extending Windows assessments to improve system quality: Part 1 Patrick Azzarello Senior Program Manager Windows.
WCL425 App Compat for Nerds Chris Jackson.
Advanced app and driver debugging
Presentation transcript:

Improving performance with the Windows Performance Toolkit 12/7/2018 5:41 PM HW-59T Improving performance with the Windows Performance Toolkit Michael Milirud Program Manager Microsoft Corporation © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Agenda Motivations for performance analysis Key Concepts Windows Performance Recorder Windows Performance Analyzer WPA integration with the ADK You’ll leave knowing how to: Approach performance Collect and analyze traces Perform basic live system analysis

Motivations for Performance Analysis

Performance is a Layered Challenge Extensions, Driver, Services, Applications Efficient platforms require efficient and reliable extensions Windows engineering processes focus on performance throughout the development cycle Operating System Core Hardware, Processor, Chipset, and Devices Fundamental quality starts with a great hardware platform

Performance Improvement is a Cycle Customer and Partner Connections Design and Develop Assess and Certify Performance analysis is an iterative process The people fixing an issue probably aren’t the people experiencing an issue The ability to easily work together is key

Key Concepts

Elements of Performance Responsiveness Unresponsive systems quickly generate customer dissatisfaction Machine constraints = reality Resource utilization Physical: CPU, GPU, disk, memory, network, battery Logical: critical sections, critical resources Resources can be critical if they are scarce, shared, and/or have queuing semantics

Origins of Windows Performance Toolkit The Windows Performance Toolkit was introduced at PDC 2009 The tools have proven to be very valuable The design focus to-date has been on power users http://www.microsoftpdc.com/2009/CL16

Benefits of WPT Enables follow up on issues raised via ADK performance assessments Enables holistic performance analysis All processes/threads All key system resources User + kernel mode Provides a way to analyze what customer actually experiences Catch the problem as it happens Capture-Anywhere-Decode-Anywhere Very low overhead versus alternatives Region of interest profiling You get both what and when

Windows Performance Recorder and Analyzer Tools for: Trace Capture (WPR) Trace Analysis (WPA) Based on ETW (Event Tracing for Windows) Used within Microsoft to build Windows Core code reused in-box Documentation on MSDN Part of ADK and SDK in Windows 8

Stages of Performance Analysis Perception Measurement Analysis System slows down App launch takes longer Browser refresh is slower Disk light is always on Poor battery life CPU profiling Context switches Changes in priority Disk I/Os Memory allocations Lock acquisition C and P state lifetimes CPU utilization CPU starvation Priority inversions Ineffective access patterns Disk saturation Memory leaks Redundant memory Lock contention Energy Efficiency Iterate

Windows Performance Recorder

Windows Performance Recorder 12/7/2018 5:41 PM demo Windows Performance Recorder © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Demo Concept Review Starting recording Monitoring recording status Saving recording Including issue description

Windows Performance Analyzer (A.K.A. XPerf)

XPerf in Windows 7

Benefits of WPA in Windows 8 Broaden the target audience to mainstream developers Leverage familiar UI experiences Enable quick ramp up Reduce ‘noise’ to focus on the ‘right’ issues

WPA in Windows 8 Legend Graph Table Detailed Graph Graph Explorer Aggregating Columns Legend Graph Grouping Columns Graphing Columns Table Gold Bar Blue Bar

demo Windows Performance Analyzer 12/7/2018 5:41 PM © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Demo Concept Review Single window lifetime management Visual Studio view management Graph Explorer Analysis Views Single shared timeline Detailed graphs Diagnostic View Profiles/sessions Presets Layouts Graph types Gold/Blue bars Synchronization of selection

WPA Integration with ADK

First Class Integration with the ADK ADK = Assessment & Deployment Kit Assessments produce traces Productive experience of troubleshooting identified issues

WPA Integration with ADK 12/7/2018 5:41 PM demo WPA Integration with ADK Following up on ADK assessment issues Here’s where the issue is! © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Demo Concept Review ADK integration Issues View Assessment Activity graph Assisted Diagnostics Details View

Things to look out for Don’t assume you know what’s wrong Don’t enable too much instrumentation Don’t trace for longer than you need Remember to enable stack walking on x64

Summary Performance is critical for your customer You have to Plan for it before you code/build Measure it as you code/build WPA is integrated with ADK WPR is a new tool in Windows 8

Related sessions HW-147T building high quality Windows PCs using the assessment and deployment kit HW-915P Introduction to assessments HW-141T Reducing the memory footprint of drivers and apps HW-922P Capturing and analyzing performance traces HW-925P Customizing WPA trace views HW-926P Introduction to the new WPA UI

Further reading and documentation Dev Center: Windows Performance Analysis MSDN documentation: WPA WPR Event Tracing for Windows Books: Windows Internals by Mark Russinovich, David Solomon, and Alex Ionescu Contact info: WPT Forum

thank you Feedback and questions http://forums.dev.windows.com Session feedback http://bldw.in/SessionFeedback

12/7/2018 5:41 PM © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.