200 likes | 330 Views
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
E N D
Windows Vista Performance Technologies Gabriel AulGroup Program ManagerMicrosoft 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 • Memory is populated with pages for Application A • Application B is loaded, pushing App A’s pages out • User switches back to Application A • Application A reloads pages as needed through Pagefaults, pushing out Application B’s pages • 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
Up to 90% Power Saving over conventional HDD Dram Cache SATA or PATA Interface NV Cache Read and Write while spindle is stopped 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
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 Performance Analyzer CKCL - ETW Kernel Events Windows Diagnostic Infrastructure 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.