Kyle Marsh Principal Program Manager Microsoft Corporation WCL305.

Slides:



Advertisements
Similar presentations
Powerful and convenient management for Windows Mobile ® 6.1 devices in an enterprise environment. These features include: Centralized, over-the-air device.
Advertisements

 Vikram Singh Program Manager Microsoft Corporation PC19.
SSRS 2008 Architecture Improvements Scale-out SSRS 2008 Report Engine Scalability Improvements.
Michael Niehaus & Tim Mintner Senior Software Development Engineers Microsoft Corporation WCL309.
 Pat Stemen Senior Program Manager Microsoft Corporation PC02.
Connect with life Gopikrishna Kannan Program Manager | Microsoft Corporation
Application Models for utility computing Ulrich (Uli) Homann Chief Architect Microsoft Enterprise Services.
Communication Challenges Communication Overload Distributed teams, partners, and customers High cost of communications Security and compliance.
Tech·Ed North America /19/2017 7:21 AM
N AME : D ANNY M ORIM T ITLE : S OFTWARE S OLUTION A RCHITECT A RROW OCS - I SRAEL This deck contains animation; view in Slideshow mode.
Paul Reed Program Manager. Define the major aspects of System Fundamentals testing Describe the Windows Logo Program testing policy List the new System.
Kim Shearer Senior Program Manager Microsoft Corporation SESSION CODE: DPR308.
Johan Arwidmark Chief Technical Architect WCL315.
Purpose Intended Audience and Presenter Contents Proposed Presentation Length Intended audience is all distributor partners and VARs Content may be customized.
Purpose Intended Audience and Presenter Contents Proposed Presentation Length Intended audience is all distributor partners and VARs Content may be customized.
Matt Ayers Senior Program Manager Microsoft Corporation WCL403.
Session 1.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Using the WDK for Windows Logo and Signature Testing Craig Rowland Program Manager Windows Driver Kits Microsoft Corporation.
Future of the Server Room Tour. Ottawa Montreal Calgary Vancouver Toronto Future of Your Server Room Three Pillars of Windows Server 2008 Virtualization.
6 Service Name Description Trigger Type AELookupSvc Processes application compatibility cache requests for applications as they are.
Windows 7 Bijoy Singhal Developer Evangelist Microsoft India Under the hood features for developers.
customer.
ADK ComponentConfiguration Manager Site System Windows Deployment ToolsCentral Administration Site Server Primary Site Server All SMS Provider.
demo Demo.
Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!
Performance Less responsive to the user Consumes resources from foreground applications Impacts boot, shutdown, and logoff Reliability Memory.
Service Pack 2 System Center Configuration Manager 2007.
Connect with life Ranjana Jain IT Pro Evangelist | Microsoft India
Connect with life Ravi Sankar Technology Evangelist | Microsoft Corporation Ravisankar.spaces.live.com/blog.
Lynn Langit Microsoft – Developer Evangelist.
Patrick Ortiz Global SQL Solution Architect Dell Inc. BIN209.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
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.
Modernizing your Remote Access
Microsoft /21/ :25 AM THR3060 Empowering education for students through the power of Microsoft Azure & Server 2016 Annur Sumar CTO, MaeTech.
Build /24/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Microsoft Ignite /31/ :08 AM
Performance Sylvain Goyette Senior Program Manager WinHEC 2015
9/6/2018 8:11 PM THR1046 Using Digital Experience Management to Validate the Impact of IT Change Mike Marks Product Evangelist, Riverbed © Microsoft Corporation.
9/18/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
9/18/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Maximizing Windows 7 Performance: Troubleshooting Tips
Microsoft Virtual Academy
11/11/2018 Desktop Virtualization Corey Hynes Kyle Rosenthal President Technical Lead HynesITe Inc Spider Consulting @windowspcguy.
Windows Phone multitasking
TechEd /14/2018 6:26 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Tech Ed North America /15/2018 4:14 AM Required Slide
Bring existing desktop apps to UWP with the Desktop Bridge
Certifying graphics experiences on Windows 8
Twenty Windows Tools You Never Knew Existed
Tooling and Diagnostics
Delivering great performance and battery life
Tech·Ed North America /7/2018 9:06 AM
Improving performance with the Windows Performance Toolkit
Customizing WPA Trace Views
12/28/2018 Desktop Virtualization Corey Hynes Kyle Rosenthal President Technical Lead HynesITe Inc Spider Consulting @windowspcguy.
Intro to Workflow Services and Windows Server AppFabric
Windows Server 2008 Iain McDonald Director of Program Management
Building great Windows 8 systems
Top OS Deployment Issues With Answers from Experts
What's New in Microsoft Deployment Toolkit 2012 (MDT)
TechEd /28/2019 3:22 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Delivering great hardware solutions for Windows
The Windows API Code Pack
5/24/ :22 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Making Windows Azure Relevant to IT Professionals
Microsoft Virtual Academy
Advanced app and driver debugging
Presentation transcript:

Kyle Marsh Principal Program Manager Microsoft Corporation WCL305

Agenda Background Activity Services Tasks Power Graphics Intuitive UI Windows Performance Toolkit

Fundamentals Increase Decrease

What Is Background Activity? System activity that is not directly initiated by user Services, Scheduled tasks, some COM processes such as a COM service, WMI providers, etc. Part of nearly every usage scenario: Search indexing System security and maintenance Network management Device management System configuration

Impact Of Background Activity Performance Responsiveness to the user Consumes resources from foreground applications Boot, Shutdown, Logoff, etc. Reliability Memory leaks System crashes, hangs Dependent application crashes Security Activity may require system privileges Successful attack may compromise entire system Power Consumption Extra disk, CPU utilization Decrease in battery life Prevents idle efficiencies

Background Activity Performance Impact Compared IT image to clean Windows Vista installation: 10 additional 3rd-party services

Windows 7 Trigger-Start Services Trigger-Start centralizes environmental detection logic SCM registers for system events via interesting providers: Device arrival IP address Domain join and leave Group policy updates Custom ETW (Event Tracing for Windows) events SCM starts or stops registered services

Some Trigger-Start Services In Windows 7 Service NameDescriptionTrigger Type AELookupSvc Processes application compatibility cache requests for applications as they are launched Custom ETW BDESVC Provides BitLocker client services for user interface and auto-unlocking of data volumes Custom ETW BTHSERV The Bluetooth service supports discovery and association of remote Bluetooth devices. Device SensorsMTPMonitor Monitors MTP (Media Transfer Protocol) sensors (such as a cell phone with a GPS receiver) to communicate sensor data to programs Device TabletInputService Enables Tablet PC pen and ink functionality Device WinDefend Protection against spyware and potentially unwanted software Group Policy

Consider Scheduled Tasks Task Triggers Task Conditions Calendar Boot Logon Idle Event log based entry Workstation lock Workstation unlock Idle condition Stop when not idle AC power only Stop on battery Wake computer from sleep Specific or any network connection

Scheduled Task Example Power Efficiency Diagnostics Windows 7 power problem analysis Executes every 2 weeks when the system is idle Requires SYSTEM privilege to access NT Kernel Logger Saves report data for user Uploads CEIP data to Microsoft Task Scheduler (schedule) Task Scheduler (schedule) Power Efficiency Diagnostics (powercfg.exe) Power Efficiency Diagnostics (powercfg.exe) Kernel Detects Idle Condition Launches Task

Performance and Power Performance is critical for background activity Adds to the base footprint of the system Interferes with foreground user activity Resource utilization directly tied to Power Consumption Target: Less than 2% CPU activity when the system is idle No disk activity when the system is idle Evaluate and Measure: Use XPerf (Windows Performance Tools Kit)

Battery Life Time Watts 0W - Off Idle Power Trade quality or performance for power savings Examples Index only high-priority items Disable animations DVD playback at 30fps instead of 60fps “Race to Sleep” Execute rapidly at high power Quickly re-enter low-power state Extend average idle duration Examples Timer coalescing Idle

Techniques Consume Less CPU Avoid polling at all costs! Poll no more often than once per second Use Timer Coalescing

Timer Coalescing API Specify a tolerance for expiration of the timer E.g., 1 second timer with 45 ms of tolerance Tolerance should be at least 16ms, preferably 33ms Period is not guaranteed Timer will always expire within Period +/- Tolerance from the previous expiration BOOL WINAPI SetWaitableTimerEx( __in HANDLE hTimer, __in const LARGE_INTEGER *lpDueTime, __in LONG lPeriod, __in_opt PTIMERAPCROUTINE pfnCompletionRoutine, __in_opt LPVOID lpArgToCompletionRoutine, __in_opt PREASON_CONTEXT WakeContext, __in ULONG TolerableDelay ); DllImport("kernel32.dll")] static extern bool SetWaitableTimerEx( IntPtr hTimer, ref long lpDueTime, int lPeriod, TimerCompletionDelegate pfnCompletionRoutine, IntPtr lpArgToCompletionRoutine, IntPtr WakeContext, ulong TolerableDelay );

Energy Efficiency Best Practices Invest in performance optimizations Reduce disk and CPU usage when the system is on battery power Do not render to the display when it is off Avoid polling and spinning in tight loops Do not prevent the system from turning off the display or idling to sleep Respond to common power-management events such as system power source changes Avoid use of high-resolution periodic timers (< 10ms) as this reduces the efficiency of processor power- management technologies

Windows 7's Usage of the GPU Continues from Windows Vista… Media Center UI Video Playback Desktop Window Manager (DWM) Windows 7 DWM uses Direct3D10.1 API Scales in performance all the way from low end integrated to high end GPUs Shaders are used for blurs in the Glass Windows 7 memory consumption is cut by 50% per window More and richer animations of the thumbnails

Windows 7 DWM Memory Usage

Direct2D: New in Windows 7 Rendering Focused Immediate Mode API: 2D Vectors & Geometry, Bitmaps and Text Hardware and Software Pipelines Built for Performance on Direct3D 10.1 Interoperable with Direct3D and GDI High Quality Rendering: Per Primitive Anti-Aliasing and MSAA via Direct3D Remoted via Direct3D 10.1 Printing support via XPS

Direct2D Performance

DirectWrite: New in Windows 7 Modern typography Enables world-wide applications ClearType advances Works with any rendering technology Hardware accelerated via Direct2D

Gabriola

DirectWrite

Windows Performance Toolkit Enables analysis for a broad range of issues including: responsiveness issues long delays in applications resource utilization issues slow On/Off transitions poor battery life Wide support range cross platform: Vista, Server 2008, Windows 7 cross architecture: x86, x64, and ia64 Based on the Windows ETW Infrastructure enables extensions which use ETW instrumentation to leverage tool set intrinsic support for Windows kernel events also support for Windows Events Publicly available for download today Strategic ongoing investment to enable performance analysis on Windows

XPerf

Performance Best Practices General Use the Windows Performance Toolkit to measure system performance during all scenarios (steady state and on/off transitions) Optimize application resource consumption (CPU and Disk) in both active and Idle states Perform testing in a controlled way and make comparisons against a valid baseline Obtain a baseline measurement on a system with as few system extensions as possible Add devices, applications, and services one at a time and test for any performance regressions Boot Reduce application resource consumption post-boot Avoid using load order groups to express service dependencies Ensure that all services report as running as soon as possible during boot to avoid blocking the Service Control Manager (SCM) Ensure that all non-essential services are converted to Demand or Trigger start in order to free up system resources during boot Avoid using managed code for services and applications on the startup path

Performance Best Practices Sleep/Hibernate Avoid delays in processing the suspend notification (WM_POWERBROADCAST message) Verify that services do not opt in to receive suspend notifications unless absolutely required Ensure that all services respond quickly to resume events and minimize post resume CPU, disk and network usage Shutdown Ensure that all services do not opt in to receive preshutdown and shutdown notifications unless absolutely required Ensure that all services that have opted to receive shutdown notifications respond quickly to the SCM Ensure that all applications respond quickly to shutdown notifications (WM_QUERYENDSESSION and WM_ENDSESSION messages) Reduce delays in the shutdown path of services and applications by minimizing CPU, disk and network activity in response to shutdown notifications

Resources Windows Software Development Kit (SDK)  Windows Performance Analysis Developer Center:  Windows Performance Analysis forum:  Event Tracing for Windows MSDN docs:  On/Off Transition Performance Analysis of Windows Vista:  Windows On/Off Transitions Solutions Guide:  Battery Life Solutions Guide:  Windows Internals:  “Windows Internals 4 th edition” by Mark Russinovich and David Solomon

Track Resources →Want to find out which Windows Client sessions are best suited to help you in your deployment lifecycle? →Want to talk face-to-face with folks from the Windows Product Team? Meet us today at the Springboard Series Lounge, or visit us at Springboard Series The Springboard Series empowers you to select the right resources, at the right technical level, at the right point in your Windows® Client adoption and management process. Come see why Springboard Series is your destination for Windows 7.

Complete an evaluation on CommNet and enter to win!

© 2009 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.