Advances in Display and Composition Architecture for Longhorn Kam VedBrat Lead Program Manager Windows Client Platform Team kamv @ microsoft.com Microsoft Corporation Greg Schechter Architect Windows Client Platform Team gregsc.
Download ReportTranscript Advances in Display and Composition Architecture for Longhorn Kam VedBrat Lead Program Manager Windows Client Platform Team kamv @ microsoft.com Microsoft Corporation Greg Schechter Architect Windows Client Platform Team gregsc.
Advances in Display and Composition Architecture for Longhorn Kam VedBrat Lead Program Manager Windows Client Platform Team kamv @ microsoft.com Microsoft Corporation Greg Schechter Architect Windows Client Platform Team gregsc @ microsoft.com Microsoft Corporation Session Outline Windows Desktop Graphics Strategy Windows codenamed “Longhorn” and Avalon Desktop Composition and Avalon Graphics Graphics Tiering & Requirements Desktop Features and Graphics Tiers Longhorn Graphics Requirements Windows Desktop Graphics Strategy We see a great deal of innovation coming in the graphics hardware space in 2006 and for many years to come Windows Client Graphics Strategy Increase overall stability of the desktop with LDDM Bring the benefits of Desktop Composition to as many new PC customers as possible. The Windows experience will be refreshed on a more regular basis with respect to graphics “Avalon” developer platform designed for modern graphics hardware Avalon Platform Demonstration Desktop Experience – Built on Avalon Avalon powers the desktop experience and provides the next generation platform for Windows client applications and content Part of WinFX, along with Indigo and WinFS Hardware accelerated using Direct3D Printing and remoting pipelines evolve to match new rendering model Consistent programming model for user interface, graphics, media, and documents Desktop Composition The 10,000’ View Window content is rendered to an off-screen buffer and composed to a back buffer which is then presented to the display Enables improvements in… Quality: “High-Fidelity” Desktop Productivity and Usability Style: Visual ‘Pop’ Composition is more demanding on the hardware Avalon Graphics Rendering of Avalon 2D primitives, text, imaging, and 3D goes through the Direct3D pipeline On Longhorn, GDI and GDI+ content drawn in software and redirected when composition is running Avalon content introduces new usage patterns for the 3D pipeline Frequent texture changes Large number of smaller primitives Intermediate surfaces Desktop Composition in Detail Win32 Applications render using GDI software rendering to a bitmap surface Avalon & DX apps render to DX Shared surface on Present() Redirection stencils out window borders to be rendered separately in DWM process Input handling for DWM and applications done by User32 Rendering w/Avalon Graphics Handles client area updates and processing asynchronously from the DWM Owns composition loop, asynchronously from DWM thread DWM Application Window Frame rendering, Animations, DPI scaling, … UxTheme Avalon Graphics GDI D3D User32 LDDM Avalon Graphics Visual/Element Tree Tree Traversal 2D Property Animation 3D Processing Queue Composition Node Text Composition Composition (milcore/d3d) Texture Surface Imaging RenderData Video Audio Media Foundation Audio Sink Composition Benefits: Quality Composition Benefits: Quality Resolution Independence Opportunity and Problem 150ppi laptops are here now 15.4” screen; Under $1,500 ~2.5x pixel density vs. 96ppi 204ppi monitors are here (~4.5x today’s typical 96ppi) 3840x2400; 22” diagonal Applications are typically written using pixeloriented units That leads to problems… The Longhorn desktop corrects for some of this Resolution Independence with Longhorn & Avalon High DPI Scaling The Longhorn desktop will provide automatic scaling of legacy applications for high resolution monitors This is possible due to redirection architecture Display IHVs Please be sure to correctly implement EDID to provide Windows with accurate information on monitor dimensions Do so by putting the correct information into all fields of the EDID structure Avalon applications work in device independent pixels Measures of 1/96th of an inch Thus, a drawing on a 204ppi monitor will be the same physical size as on a 96ppi monitor But it will be much more detailed and crisp Solves the issue at the source, the API – apps written in terms of physical units Composition Benefits: Productivity Enables new scenarios on High DPI & high resolution displays Applications that are not DPI-aware are scaled on High DPI displays for improved usability End-user option for managing screen real-estate with many windows open Tools for managing large numbers of windows Window Selection Clutter Removal Composition Benefits: DWM Quality & Productivity Demonstration Graphics Tiering Allows tailored experiences focused on segments of the HW landscape Windows scales across the breadth of the market “One-size fits all” would leave hardware behind Customer Segments: Value and Mainstream Graphics Baseline: Upgrades & Deployments Desktop Experiences and Graphics Tiers Value & Mainstream Deliver Quality Improvements, Productivity Enhancements, and Visual “Pop” Baseline Classic Deployment: • Windows 2000 look • XPDDM or LDDM To Go Broad Hardware Compatibility: • Looks like Longhorn • No Composition • No Effects • XPDDM or LDDM Express: • LDDM/DX9 • Composition-based DPI Scaling Glass: • Glass effect in window frames • 3D Transition Animation & Effects Longhorn Graphics HW Requirements Graphics hardware requirements are similar to what we presented at WinHEC in May 2004 Primary driver in graphics performance requirements is desktop composition (Premium) Video Driver LDDM (Standard) Color Depth 32bpp GPU generation DX9 Memory allocated for graphics Minimum: 64MB Recommended: 128MB 256MB (1600x1200+) Texture Update Bandwidth 2Gb/Second Polygon Counts ~1.5M triangles / second (one window is ~150 triangles) Multi-Display and High DPI As display resolution increases, so does the amount of video memory and bandwidth required for Desktop Composition High DPI Multi-display Example Dual Monitor at 1600x1200 resolution Desktop flip chain takes 31MB by itself Application windows will take even more memory Integrated Graphics LDDM and Performance are key prerequisites, not physical architecture Clarifying how integrated graphics perform with Desktop Composition is a high priority for Microsoft Minimal early testing on integrated platforms for desktops Continued engagement is required for mobile platforms as they become available Mobile PC Graphics Trends Aero-capable hardware is appearing in laptops today Some, but not all mobile devices in ’06 will be Aero-capable Configuring the Desktop Experience Manufacturers Pre-configure the experience and set of end-user options available System analysis tools to aid in designing specific configurations End Users Chose between options made available by system provider Built-in hardware analysis functionality Plug & Play scenarios Upgrade scenarios Group Policy for IT Professionals Summary Classic To Go Aero Corporate Upgrades & Deployments Consumer Upgrades, Ultra-Mobile, Ultra-Low-Cost Mainstream & High-end Graphics Style: • Drop Shadows • Dynamic Highlights • Glass • Animations Productivity: Windows 2000 Look Looks like Longhorn • DPI Scaling • 3D Window Management • Window Thumbnail Previews Quality: • Tear-Free Desktop Classic Window Manager Avalon Desktop Composition XPDM or LDDM LDDM Call to Action Stable, Fast LDDM drivers are a pre-requisite for a great Aero experience on Longhorn Tune your device drivers for DWM and Avalon workloads Having proper EDID information is very important for DPI scaling Community Resources Windows Hardware & Driver Central (WHDC) www.microsoft.com/whdc/default.mspx Technical Communities www.microsoft.com/communities/products/default.mspx Non-Microsoft Community Sites www.microsoft.com/communities/related/default.mspx Microsoft Public Newsgroups www.microsoft.com/communities/newsgroups Technical Chats and Webcasts www.microsoft.com/communities/chats/default.mspx www.microsoft.com/webcasts Microsoft Blogs www.microsoft.com/communities/blogs