1 / 42

Future Directions In Graphics

Future Directions In Graphics. David Blythe Software Architect Windows Graphics Microsoft Corporation. The Vision. Windows delivers unparalleled graphics and multimedia experience in all application areas Games Workstation (CAD, Content Creation,…) Presentation Imaging Video

loyal
Download Presentation

Future Directions In Graphics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

  2. The Vision • Windows delivers unparalleled graphics and multimedia experience in all application areas • Games • Workstation (CAD, Content Creation,…) • Presentation • Imaging • Video • Eagerly driving new technologies togetherwith our hardware and software partners

  3. This Session • Overview major technology parts • Provide context for more detailed sessions • Point out interactions between components • Describe where we are going longer term

  4. Session Outline • Windows Graphics Big Picture • Windows Display Driver Model • Rendering APIs (Direct3D, OpenGL, GDI) • Device APIs (DXGI) • Desktop Window Manager • Media APIs (DirectX Video Acceleration) • Presentation APIs (WPF) • Future

  5. Big PictureSimplified Workstation(Inventor) Games(Oblivion) Imaging(PhotoViewer) Video(MediaPlayer) Presentation(Office) … WindowsPresentationFoundation Shell DesktopWindow Mgr PIX MediaFoundation MIL DShow WindowsColor System GDI+ OpenGL Direct3D DXVA DXGI User GDI PrintTerminal ServerRemote Assistance… XPDM WDDM

  6. Graphics Core In Windows Vista Microsoft- written code IHV-written code WPF DWM PIX Media Foundation MIL GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL OpenGL ICD Common pipeline (DDI) User-Mode Driver User Mode Kernel Mode Win32Kernel DXGKernel Kernel-Mode Driver

  7. Windows Display Driver Model • Bedrock upon which all graphics are built • Fundamental principle • Graphics Just Works • Re-architect entire driver stack • Consolidate 10 years of evolution • New driver model delivers • Stability • Security • Availability (application virtualization) • Performance

  8. Windows Display Driver Model • Staged evolution of driver model • WDDM 1.0 model supports current hardware • E.g., pre-Windows Vista hardware • Advanced model (WDDM 2.x) utilizes new hardware features • Post Windows Vista • More efficient virtualization • Old Windows XP driver model still supported for compatibility • No new features

  9. Windows Display Driver Model • For more information: WDDM v2 and Beyond, Steve Pronovost, et al.

  10. Rendering APIs • Lots to choose from • GDI/GDI+ • DirectDraw • Direct3D [3..10] • OpenGL • (Windows Presentation Foundation) • Break into categories • Legacy • Mainstream (GDI, Direct3D 9/9Ex) • New (Direct3D 10)

  11. User Mode Kernel Mode Legacy APIs WPF Microsoft-written code IHV-written code DWM PIX Media Foundation MIL GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL OpenGL ICD Common pipeline (DDI) User-Mode Driver Win32 Kernel DXGKernel Kernel-Mode Driver

  12. Legacy APIs • Older Direct3D immediate mode APIs supported • D3DRM (retained mode) API retired • Map older runtimes onto Direct3D 9 DDIs • E.g., runtimes ≤ Direct3D 8, DirectDraw • Fixed-function onto shaders, etc. • Direct3D9 interface matches DirectX 9.0c • Same behavior as Direct3D 9 on Windows XP • Maintain application compatibility

  13. Direct3D9Ex Microsoft- written code IHV-written code WPF DWM PIX Media Foundation MIL GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL OpenGL ICD Common pipeline (DDI) User-Mode Driver User Mode Kernel Mode Win32 Kernel DXGKernel Kernel-Mode Driver

  14. Direct3D9Ex • Enhanced version of Direct3D 9 • Also known as “DX9.L” • Cross-process shared surfaces • “Unlimited memory” • All memory resources are “managed” • Resource management controls • Prioritization of resources • Antialiased text rendering support • Monochrome texture filter with large kernel size • No more “device lost” • Less frequent “device removed”

  15. OpenGL Microsoft- written code IHV-written code WPF DWM PIX Media Foundation MIL GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL OpenGL ICD Common pipeline (DDI) User-Mode Driver User Mode Kernel Mode Win32 Kernel DXGKernel Kernel-Mode Driver

  16. OpenGL • Three options for Windows Vista Developers • OpenGL 1.1 software implementation • XP driver model OpenGL ICDs • Not DWM-compatible, DWM shuts off • 3rd party WDDM OpenGL ICDs • DWM compliant • Limited inbox support for application compatibility • Using Direct3D 9

  17. GDI/GDI+ • Workhorse for Windows • Presentation/UI, device control, etc. • Reduced hardware acceleration in Windows Vista • Necessary to accomplish WDDM implementation • Continue to tune before release • Continue to invest in GDI in future • Protect API investment • Enhance where feasible

  18. Direct3D 10 And DXGI Microsoft- written code IHV-written code WPF DWM PIX Media Foundation MIL OpenGL ICD GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL Common pipeline (DDI) User-Mode Driver User Mode Kernel Mode Win32 Kernel DXGKernel Kernel-Mode Driver

  19. Direct3D 10 • Next Version of Direct3D • Supported in Windows Vista • Proposed Premium Logo requirement • Major improvements in • Hardware consistency • Rigorous specification, elimination of capability bits • Programmer expressiveness • Unified, more capable, shader programming model • Flexible memory model • New pipeline stages • WDDM + Direct3D 10 are fundamental improvementto the Windows gaming platform

  20. Direct3D 10 • Additional information: DirectX Graphics: Direct3D 10 and Beyond, Sam Glassenberg

  21. DXGI • Separate rendering from device management • DXGI (eventually) does • Adapter management • Display mode management • Present to monitor • Output management • Gamma/Color • Improvements of GDI 256 entry table • Monitor controls • Long term, subsumes functionality from GDI • Currently only works with Direct3D 10

  22. Desktop Window Manager • New desktop experience using WPF and DirectX • Uses new D3D9Ex interfaces • Desktop Window Manager (DWM) • Composited desktop • Window movement without repainting underlying windows • No more dragging garbage • Client areas from applications • GDI, Direct3D, WPF • Video • Non-client areas from the Window Manager • Allows different views of application windows

  23. Desktop Window Manager • Supports high-dpi displays • Composition with magnification • Supports video playback • Takes advantage of Direct3D 9 shaders • For non-client areas, transitions • Animated transitions, etc. • New D3D9Ex cross-process shared surfaces • Allows DWM to access application back buffers • Turns off when certain application types running • Overlay planes, front buffer rendering,…

  24. Desktop Window Manager WPF Application D3D Application GDI Application surface surface surface Desktop Window Manager

  25. Full Screen Exclusive, Multimon, And DWM • Continue to allow apps to have exclusive monitor access • Control video mode, gamma, etc… • Desktop window manager disappears • Other applications can continue to run • May bump the priorities of the output-exclusive app • Applications should recognize case where client area is occluded • Background processing on the GPU • Multiple monitors independent • Composited desktop image per monitor • Exclusive output independent for each monitor

  26. Media APIs WPF Microsoft- written code IHV-written code DWM PIX Media Foundation MIL GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL OpenGL ICD Common pipeline (DDI) User-Mode Driver User Mode Kernel Mode Win32 Kernel DXGKernel Kernel-Mode Driver

  27. Imaging • Hardware accelerated photo experience • 12-16Mpix @ 60 fps • Builds on Direct3D 9 API • Uses texture mapping + shading for image processing • Rely on Shader Model 2.0 capabilities • Float16 processing • Lots of accelerator memory • Large texture images (> 2Kx2K)

  28. Video Acceleration • Relies on more specialized hardware support • Decode: IDCT, motion compensation • Processing: Deinterlace, denoise, scale, mixing • Content protection of high value data • OPM, Protected Video Path • Supported through DirectX Video Acceleration (DXVA) APIs • Media Center and Media Player use same pipeline

  29. Video Acceleration • Additional information: Windows VistaVideo Pipeline Architecture and Implementation, Glenn Evans; How to Implement Windows Vista Content Output Protection, Dave Marsh

  30. Windows Presentation Foundation • Highly integrated stack • Layout, text, video, audio, imaging • Builds on other parts of stack • Media Foundation • Imaging • Direct3D 9 • WCS

  31. DWM And WPF • Additional information: Desktop and Presentation Impact on Hardware Design, Kam Vedbrat

  32. Future Technologies • Warning: These are directions not commitments • Continue the vision • Rich graphics and media experience • Available all the time to all applications • Robust, efficient, applications don’t interfere • Scales across mobile, desktop,… • Seamless print, remote, terminal server

  33. Windows Display Driver Model • Lots of areas to address • Move to preemptive context switching and page-level memory management ASAP WDDM2.1 • Flexible multi-GPU, linked adapters (LDA) • Graphics multiprocessing • Power management • Boot video, VGA, ACPI/BIOS • Virtual Machine support

  34. Display/Device Technologies • Color managed desktop • Hi-def color (float16) • Consumer Electronics (TV) devices • Greater format coverage • Multimon • Improve the fullscreen/windowed experience • Multi-desktop support • Magnification • Monitor controls • DDC/CI • Rationalize GDI/DXGI device control

  35. Rendering Technologies • Game applications • Higher-def, procedural content • Surface tessellation, order-independent transparency • Shader expressiveness • Presentation technologies • Move to Direct3D 10 base by 2009? • Text, antialiasing, 2D rendering • Rendering quality • Multicore CPU investments • Process or move data faster

  36. Media Technologies • Imaging • Direct3D 10 provides ideal base • Move to “HDR” (actually 16-bit MDR) • Minor improvements for additional image formats • 16-bit fixed in addition to 16-bit float • Video • Content Protection (Protected Video Path) • Glitch-resilience • Preemptive context switching in WDDM 2.1 is key • Hardware Encode/Analysis • Background transcoding • Processing • HD-DVD compositing scenarios

  37. General Compute (GPGPU) • GPU rapidly generalizing • Good at high-bandwidth, data-parallel compute • Image processing, video processing, physics,… • 100 GB/s, 300+ GFlops • Looking at more generalized infrastructure • Don’t draw triangles to trigger computations • Enabled by • Hardware implementation consistency • Fast CPU ↔ GPU data transfer • Multi-GPU support

  38. Call To Action • Windows Vista • Hardware-accelerated graphics all the time • WDDM 1.0 • Direct3D 9/9Ex is everywhere – now • Rapid adoption of Direct3D 10 – it delivers the future • DXVA, content protection, glitch reduction • Next • WDDM 2.1 – efficient GPU virtualization • Direct3D 10.1 – incremental changes to 10 • Hi-def color, HD-DVD • Greater generalization of GPU capabilities

  39. Additional Resources Directx @ microsoft.com • Email: • Related Sessions • WDDM v2 and Beyond • DirectX Graphics: Direct3D 10 and Beyond • Desktop and Presentation Impact on Hardware Design • How To Support Windows Color System in Printers, Displays, and Image Capture Devices • DXVA 2.0: A New Hardware Video Acceleration Pipeline for Windows • Windows Vista Video Pipeline Architecture and Implementation • How to Implement Windows Vista Content Output Protection

  40. Questions?

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

More Related