Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Windows Vista Performance Technologies Gabriel Aul Group Program Manager Microsoft Corporation System Responsiveness Ensuring Memory is well Utilized SuperFetch Avoiding the Disk Bottleneck ReadyDrive Hybrid Hard Drive ReadyBoost Expanded Memory Devices Supporting infrastructure Low-priority I/O Diagnostic tools What Causes Inconsistent System Responsiveness? Poor Memory Content Performance erodes over time The application has not run recently Background applications have swept through memory Transition-related After boot or hibernate After Fast User Switch After lunch or big application Random/Blocking Disk Operations Page faults Program loads Disk spin up time Poor Memory Contents Effective management of a limited shared resource under contention A perennial computer science problem Affects Disk, CPU, Network, etc. Typical Memory Pressure Scenario 1. Memory is populated with pages for Application A 2. Application B is loaded, pushing App A’s pages out 3. User switches back to Application A 4. Application A reloads pages as needed through Pagefaults, pushing out Application B’s pages 5. Repeat cycle… The Seek Problem Drive Industry Continues to Deliver Impressive Data Rate, Rotation and Interface Speed Improvements ATA/33 ATA/66 ATA/100 SATA 4200RPM 5400RPM 7200RPM 10000RPM 2 MB 8 MB 16 MB Result: Sequential IO rates of 80 MB/s+ At that rate, 1 GB of RAM fully populated in ~12.8sec Seek Times Improving, but not as Significantly 3.5” Desktop drive avg seek ~10 mSec 2.5” Mobile drives ~12.5 mSec Much better when hitting the track buffer… Result: Random IO rate limited to an effective 1MB/sec At that rate, populating 1GB of RAM takes ~1024sec! The Seek Problem 50% of MobileMark 2005 I/Os are 4 KB and Random Files and Structured Files A single DLL is generally 5 to 6 Disk Locations (min) Directory, MFT Entry, and other File System Metadata PE Hdr page, .text pages, .data pages, .rsrc pages,… Programs like Internet Explorer, Adobe Reader, or Outlook use over 100 DLLs Reliability and Durability Logging, Transactions, Application Temp Files A simple Registry Write can require 5 to 6 Random and Ordered Disk Writes Synchronous Blocking Nature of Page Faults Code pages, Stack pages, and Heap pages can all be faulted upon Hard to develop Asynchronous Client applications The Seek Problem Can be mitigated by adding large amounts of physical RAM Lots of headroom for app and data pages Memory pressure on 2 GB systems is nominal for most workloads Not feasible for most customers Next best solution: Avoid the impact by caching pages before they are needed SuperFetch SuperFetch is a breakthrough in memory management Optimizes based on usage patterns over time Takes into account frequency of page usage, usage of page in context of other pages in memory Adapts to memory usage patterns, including complex usage scenarios Proactive and resilient Smart about getting the right content into memory early and resilient to memory pressure Efficient Uses low priority I/O for pre-fetching and pre-population SuperFetch manages RAM and cache memory ReadyBoost Non-volatile memory serves as a supplementary cache for SuperFetch External USB keys, SD cards, Compact Flash, internal PCIe cards Allows fast reads to satisfy page faults when page is not in main memory Up to 10x faster than random HDD reads Latency for USB Flash Drive ~0.8 mSec Caches data proactively based on user activity ReadyBoost Properties Reliable Write-through cache allows user to remove device at any time No unique contents in the cache – always HDD-backed Device wear is not an issue Unique write gathering algorithm optimizes performance and wear patterns Projected life of devices 19.4 – 1823 years depending on device size, variant, and usage patterns Secure Data is encrypted using AES 128bit crypto Efficient Data is compressed by a factor of 1.8X to 2.3X ReadyDrive Hybrid Hard Disk A Nonvolatile cache (NV Cache) is added to the hard disk drive Allows data to be read and written while platter is spun down Data in cache persisted when powered down SuperFetch provides efficient cache utilization Up to 90% Power Saving over conventional HDD Dram Cache SATA or PATA Interface Read and Write while spindle is stopped NV Cache ReadyDrive ATA Command Set A new ATA command set has been specified by Microsoft, HDD manufacturers, and industry partners which enables rich management of the NV Cache Single ATA command with sub-commands Identify hybrid hard disk functionality Add/Remove LBAs from NV Cache “pinned set” Query NV Cache pinned set Enter/Leave power saving mode Etc Accepted by T13 for standardization in the ATA 8 specification Opportunity for innovation by device and host moving forward ReadyDrive Benefits Performance Faster Boot Windows Vista systems with a ReadyDrive disk can boot faster by eliminating disk spin-up delay and seeks during the boot process Faster Hibernate/Resume New default Sleep behavior of Windows Vista will make resume from hibernate (S4) a more common occurrence for mobile PCs Windows Vista resumes faster using H-HDD by eliminating disk spin-up and seeks early in the resume process Performance improvement from minimizing disk seeks and enabling more IOs per second Power Savings/Battery Life Windows Vista can reduce HDD power consumption of typical 2.5” HDD by 70-90% when operating on battery by keeping magnetic platter spun down most of the time Translates into 6-12% of system power budget depending on design Reliability improvements Vibration or impact during writes not a problem with NV memory Reduced noise Low-Priority I/O What is low-priority I/O? Developers have long been able to throttle CPU usage by setting thread priorities With Windows Vista, developers can now set I/O priorities Low-priority I/O in Windows Vista SuperFetch Search indexing Windows Defender Disk defrag software Startup applications Performance Tuning And Diagnostics Lower the cost for diagnosing performance problems Easier diagnosis and resolution of performance problems Leverages data within the Circular Kernel Context Logger (CKCL) Provides a record of recent system activity Automated analysis applied for defined scenarios Analysis results written to System Event Log Performance Diagnostics Architecture Windows Diagnostic Infrastructure Performance Analyzer CKCL - ETW Kernel Events System Event Log Windows Vista Performance Enhancements More Consistent Responsiveness with SuperFetch Improved state transitions More resilient to memory pressure Uses innovative hardware solutions ReadyDrive Hard Disks provide reliability, battery, and performance benefits ReadyBoost Expanded Memory Devices provide performance boost without needing to add more RAM Improved diagnostic tools Performance Diagnostics and Circular Kernel Context Logger (CKCL) Call To Action Use Prioritized IO whenever possible Ensure your startup apps function correctly with startup app boxing Drivers and services not affected Additional Resources T13 website for ATA8 specification http://www.t13.org/ © 2006 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.