Tech Ed North America 2010 11/15/2018 4:14 AM Required Slide

Slides:



Advertisements
Similar presentations
 Ricky Buch Program Manager Microsoft Corporation  Kevin Michael Woley Program Manager Microsoft Corporation PC50.
Advertisements

Tech·Ed North America /19/2017 7:21 AM
Instrumentation And Performance Microsoft ® Corporation.
Matt Ayers Senior Program Manager Microsoft Corporation WCL403.
Marcius Tribelhorn Premier Field Engineer Microsoft South Africa WCL401.
demo ETL file Event Providers Control/Status Control/Status ETW Session 2. Any component that has been instrumented with Event.
Paul Foster Developer Evangelist Microsoft Windows 7 – Top Features for your Applications SESSION CODE: W00T!
Deployment Internals: Mastering Windows Deployment Services
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.
Tech·Ed  North America /11/ :01 AM SESSION CODE: DEV405
TechEd /9/ :26 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Unleash the Power of Microsoft Deployment Toolkit 2010
MDOP: Advanced Group Policy Management 4.0
TechEd /14/2018 6:55 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Excel Services Deployment and Administration
Microsoft Visual Studio IDE Futures
Maximizing Windows 7 Performance: Troubleshooting Tips
Overview of Social Computing in Microsoft SharePoint 2010
Customer Experiences With Business Intelligence
Implementing RESTful Services Using the Microsoft .NET Framework
Managing Specialized Devices With Windows Embedded Device Manager 2011
Windows PowerShell Remoting: Definitely NOT Just for Servers
TechEd /14/2018 6:26 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
TechEd /21/2018 5:20 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
What’s New In ASP.NET MVC 2
Matt Masson Software Development Engineer Microsoft Corporation
TechEd /23/ :44 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Advanced Dashboard Creation Using Microsoft SharePoint Server 2010
New Developer Tools in Windows Embedded Standard 2011
TechEd /24/2018 5:46 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Twenty Windows Tools You Never Knew Existed
11/29/2018 1:22 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
TechEd /2/2018 5:42 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
High Availability: A Contrarian View
Manage Your Enterprise from a Single Seat: Windows PowerShell Remoting
Tech·Ed North America /5/2018 6:43 PM
Windows 7 Deployment en Masse
Tech·Ed North America /7/2018 9:06 AM
Tech·Ed North America /7/2018 2:51 PM
Microsoft Virtual Academy
Team Foundation Server 2010 for Everyone
Customizing WPA Trace Views
Introducing Microsoft SQL Server 2008 R2 Master Data Services
Authoring for Microsoft Silverlight 4 with Microsoft Expression Blend
Tech Ed North America /1/ :36 AM Required Slide
Tech Ed North America /1/2019 2:58 AM Required Slide
Intro to Workflow Services and Windows Server AppFabric
TechEd /11/ :44 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Tech·Ed North America /17/2019 1:47 AM
Microsoft SharePoint Conference 2009 Jon Flanders
TechEd /2/2019 7:31 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
2010 Microsoft BI Conference
Top OS Deployment Issues With Answers from Experts
The Windows API Code Pack: Add Windows 7 Features to Your Application
What's New in Microsoft Deployment Toolkit 2012 (MDT)
Tech Ed North America /12/2019 6:45 AM Required Slide
Delivering great hardware solutions for Windows
A Lap Around Internet Explorer 9 For Developers
TechEd /23/2019 9:23 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
2010 Microsoft BI Conference
Service Template Creation from the Ground Up
Hack-proofing your Clients using Windows 7 Security!
Tech Ed North America /27/ :04 AM Required Slide
Lap Around the Windows Azure Platform
Code First Development in Microsoft ADO.NET Entity Framework 4.1
The Windows API Code Pack
Building BI applications using PowerPivot for Excel
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
Tech Ed North America /6/2019 2:07 PM Required Slide
Presentation transcript:

Tech Ed North America 2010 11/15/2018 4:14 AM Required Slide SESSION CODE: WCL306 Fundamentals in Windows Applications for Developers: Graphics, Power, Services, and Profiling Yochay Kiriaty Senior Technical Evangelist 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.

Microsoft Confidential

Improved Fundamentals in Windows 7 Decrease Increase Memory Reference set, Graphics Disk I/O Registry Reads, Indexer Power DVD Playback, Panel, Timers Speed Faster Boot, Device Ready Responsiveness Start menu, Taskbar Scale 256 cores

Building A Great Windows 7 Applications Differentiate Create new experiences on Windows 7 EXPERIENCE Become a first class Windows 7 citizen Optimize Product passes Microsoft quality tests Compatible

Wednseday June 9th, Room 356, 8 am Optimize for User Experience Get the Most Out of Windows New UI Enhancements Taskbar Jump lists Thumbnail Preview and Aero-peek Libraries and federated search Windows Ribbon DirectX, DirectWrite, and Direct2D More advance topics: Windows Touch Windows Sensors and Location WLC312 -Optimizing Your Application for the Windows 7 User Experience Wednseday June 9th, Room 356, 8 am

Optimize for Performance Get the Most Out of Windows Performance Enhancements I/O priorities and cancelable I/O File System and Registry Transaction Support Windows Error Reporting Application restart and recovery with Restart Manager Power efficiency improvements Trigger-Start Services Windows Troubleshooting Platform Windows Instrumentation Windows Performance Tool Kit

Ensuring Good Performance Responsiveness Unresponsive system  customer dissatisfaction Resource Utilization CPU, disk, memory, network, Battery Resources are limited and shared by others Good Citizenship It takes just one component to impact the entire system performance

Power Efficiency

Power Efficiency “All day” mobile PC battery life TCO – reduced cost of energy consumption New power consumption regulatory compliance Environmental consortiums for computing (Green Computing) Software performance is critical for Power Efficiency Windows 7 power optimization Less than 2% CPU activity when the system is idle No disk activity when the system is idle Reduced number of OS activities that prevent use of CPU’s power-saving modes.

Power Efficiency – Timer Coalescing API Platform energy efficiency can be improved by extending idle periods New timer coalescing API enables callers to specify a tolerance for due time Enables the kernel to expire multiple timers at the same time 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 ); Timer tick 15.6 ms Vista Periodic Timer Events Windows 7

Analyze Energy-Efficiency Tech Ed North America 2010 11/15/2018 4:14 AM Analyze Energy-Efficiency DEMO © 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.

Trigger Start Services

Impact of Background Activities Many activities in the background Performance Responsiveness Consumes resources Boot, shutdown, logoff, and so on Reliability Memory leaks System crashes and hangs Dependent application crashes Security Greater attack surface System privileges Successful attack may compromise entire system Power consumption Extra disk, CPU utilization Decrease in battery life Prevents idle efficiencies

Do We Really Need So Many Services? OEMs and third parties services Most services are not required during log-on Even more services are not required during boot Most services do not need to run 24x7 Conclusion: Most services can be launched on demand when needed Most services can be terminated on demand when needed Consider using Windows Tasks

Service Startup Types Prior to Windows 7 Automatic Start Your service is always there Launched as part of the boot sequence Slower startup time Bigger memory footprint Delayed Auto Start Just deals with Slow startup time Demand Start (manual) You must programmatically launch the service Why these services startup types are not enough? Automatic Start adds latency to boot and shutdown, and always consumes resources Demand Start is hard to program against and just resolve the startup problems

New In Windows 7 - Trigger Start Services Trigger Start services are started when needed and stopped when their work is completed The service should be running only if it has something to do. Windows 7 Available service triggers: Device interface arrival Joining or leaving a domain Opening or closing a firewall port Group policy change First IP address arrival Last IP address removal Custom events (ETW)

Trigger Start API SERVICE_TRIGGER trigger = { 0 }; Tech Ed North America 2010 11/15/2018 4:14 AM Trigger Start API SERVICE_TRIGGER trigger = { 0 }; trigger.dwTriggerType = SERVICE_TRIGGER_TYPE_IP_ADDRESS_AVAILABILITY; trigger.dwAction = SERVICE_TRIGGER_ACTION_SERVICE_START; trigger.pTriggerSubtype = (GUID*)&NETWORK_MANAGER_FIRST_IP_ADDRESS_ARRIVAL_GUID; SERVICE_TRIGGER_INFO info = { 0 }; info.cTriggers = 1; info.pTriggers = &trigger; ChangeServiceConfig2(hService, SERVICE_CONFIG_TRIGGER_INFO, &info); © 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.

Trigger Start Services In Windows 7 Tech Ed North America 2010 11/15/2018 4:14 AM Trigger Start Services In Windows 7 DEMO © 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.

Troubleshooting Platform

Windows Troubleshooting Platform Consistent troubleshooting experience Reduces helpdesk costs and drive higher user satisfaction Automates standard diagnoses, verify cycle Extensible–write your scripts and you’re good to go Based on Windows PowerShell™ scripts, can invoke any code Windows Troubleshooting Pack Designer (SDK) Easily integrated into your application Many troubleshooters available out of the box Leverage Windows troubleshooting for common issues

Windows Troubleshooting Platform In Action Tech Ed North America 2010 11/15/2018 4:14 AM Windows Troubleshooting Platform In Action DEMO © 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.

Troubleshooting Components Troubleshooting Pack: Implemented in PowerShell V2 Uses a standard wizard interface Signed by a certificate Deployed as .cab files Can run remotely, can run unattended Troubleshooting Platform: Executes troubleshooting packs Generates reports for analysis

Troubleshooting Pack Anatomy Identification Metadata Name and description List of configuration issues Security signature Detection Scripts Checks current configuration with expected configuration Trouble-shooting Pack Resolution Scripts Sets the current configuration to what is expected Verification Scripts Verifies that current configuration is now what is expected Localized Resources Contains localized display strings in MUI format

Component Interaction Process 1 GUI CMD Troubleshooting Pack Windows Troubleshooting Framework Troubleshooting Runtime Engine Results and Reports Get-DiagInput Update-DiagReport Add-DiagRootCause Write-DiagProgress PowerShell Scripts Platform cmdlets Process 2 PowerShell Runtime

Windows Troubleshooting Platform In Action Tech Ed North America 2010 11/15/2018 4:14 AM Windows Troubleshooting Platform In Action Built your own troubleshooting package DEMO © 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.

Windows Instrumentation

Windows Instrumentation Key Features High-performance, low overhead, highly scalable Native and Managed APIs Dynamic enablement of data collection Multiple data collection options Technology options (Windows Management Instrumentation) Performance Counters Event Log Event Tracing for Windows (ETW)

Windows Performance Counters Always-present, always-on instrumentation infrastructure Numeric information grouped into categories, counters and instances Access Programmatically (native and managed) Through script languages Using the Performance Monitor tool (perfmon)

Exposing Performance Counters Native Create a manifest Use the CTRPP preprocessing tool PerfAutoInitialize PerfCreateInstance PerfSet*Counter*Value Managed: System.Diagnostics namespace PerformanceCounterCategory class CounterCreationDataCollection class PerformanceCounter class

Windows Performance Counters Tech Ed North America 2010 11/15/2018 4:14 AM Windows Performance Counters Exporting and viewing custom performance counters DEMO © 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.

ETW/Event Log Event tracing for Windows Always-present, selectively-on logging infrastructure Information defined by event templates Access Programmatically (native and managed) Script languages (PowerShell) Command Line tools (tracerpt) Event Viewer

Windows Event Overview Event Audience Developer; IT Professional System Administrator Technology ETW Event Log Event Control Manual Always On Event Rate High (10^4 / sec) Medium (10^2 - 10^4 / sec) Features Declaratively defined in manifests Programmatic Consumption Discoverability Localizable Strings Flexible Data Model Same Features of ETW plus: Remote Collection Data Query Support Admin Focused Tools Centralized event logs Reduced logging rate

Xperf Scenarios Profile applications or the system itself (sampling profiler mode) Capture ETW data for later analysis Determine whether an application is I/O- or CPU-bound …and many others!

Windows Performance Toolkit xperf.exe: Command-line tool for ETW capturing and processing xperfview.exe: Visual trace analysis tool xbootmgr.exe: On/off transition state capture tool Works on Windows Vista SP1, Windows Server 2008 and Windows 7

Capturing A Trace Turn tracing on: xperf -on <PROVIDER> Perform activities Capture a log: xperf -d <LOG_FILE_NAME> Analyze it: xperf <LOG_FILE_NAME> xperf -on Base xperf -d result.etl xperfview result.etl

Xperf Disk utilization

Xperf Hard page faults

Xperf Overlay graph

Using Xperf to identify performance issues Tech Ed North America 2010 11/15/2018 4:14 AM Using Xperf to identify performance issues Capture and analyze DEMO © 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.

Optimize for Windows 7 Summary Use Windows 7 features to optimize for performance I/O priorities and cancelable I/O File System and Registry Transaction Support Windows Error Reporting Application restart and recovery with Restart Manager Power efficiency improvements Trigger-Start Services Windows Troubleshooting Platform Windows Instrumentation Use Windows Performance Tool Kit to profile

Required Slide Track PMs will supply the content for this slide, which will be inserted during the final scrub. Tech Ed North America 2010 11/15/2018 4:14 AM Track Resources Learn about Windows Client Development: http://developforwindows.com Try out the Internet Explorer 9 Platform Preview: www.ietestdrive.com Interested in Windows hardware or software? Check it out: http://ReadySet7.com © 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.

Resources Learning Required Slide www.microsoft.com/teched Tech Ed North America 2010 11/15/2018 4:14 AM Required Slide Resources Learning Sessions On-Demand & Community Microsoft Certification & Training Resources www.microsoft.com/teched www.microsoft.com/learning Resources for IT Professionals Resources for Developers http://microsoft.com/technet http://microsoft.com/msdn © 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.

Complete an evaluation on CommNet and enter to win! Tech Ed North America 2010 11/15/2018 4:14 AM Required Slide Complete an evaluation on CommNet and enter to win! © 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.

Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st http://northamerica.msteched.com/registration   You can also register at the North America 2011 kiosk located at registration Join us in Atlanta next year

Tech Ed North America 2010 11/15/2018 4:14 AM © 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. © 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.

Required Slide Tech Ed North America 2010 11/15/2018 4:14 AM © 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.