1 / 35

Graphics on the server

SAC-217T. Graphics on the server. Akshay Agrawal Senior Program Manager Microsoft . Agenda. What is Graphics on Server? The Graphics Driver Model in Windows 8 supports key server scenarios How to take advantage of the Graphics Driver Model

niabi
Download Presentation

Graphics on the server

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. SAC-217T Graphics on the server Akshay Agrawal Senior Program Manager Microsoft

  2. Agenda • What is Graphics on Server? • The Graphics Driver Model in Windows 8 supports key server scenarios • How to take advantage of the Graphics Driver Model • This session highlights how the Graphics Driver model • brings the Metro style experience to server • offers rich functionality for users, developers and administrators

  3. What is Graphics on Server?

  4. What is Graphics on Server? • Administrator logging in to Windows to manage a server • Harnessing the power of a GPU for computational purposes

  5. Windows Graphics Driver Model

  6. WDDM has been optimized for Server scenarios

  7. Metro style UX and Apps Single Graphics Driver Model • DirectX technologies like: Direct3D, Direct2D, DirectWrite • Aero via the Desktop Window Manager (DWM) • Single code base for ISVs • Availability • Reboot-less driver upgrade • Timeout Detection and Recovery (TDR) • GPU preemption and fault tolerance • Single code base for IHVs - Improved reliability • Innovations • UEFI GOP • Headless system • Collaboration and Remote Desktop Access APIs • DirectCompute

  8. WDDM is the only Graphics Driver model for Windows

  9. Key Scenarios on the Server

  10. Windows Desktop Usage

  11. Scenarios • Administrator logs into the Windows desktop of a physical or virtualized server • Vendor provided WDDM driver OR • Microsoft provided WDDM driver

  12. Full Graphics Driver Types of WDDM Drivers • Windows Vista, Windows 7 and Windows 8 • Render + Display + Protected Video playback • Hardware accelerated Direct3D • Discontinuing support for desktop modes less than 32 Bits Per Pixel • Display Only Driver • Supports display out functionality only • No need for 2D and 3D acceleration in hardware • Supports Metro style experience using inbox software rasterizer • Hardware accelerated (region moves, mouse pointer) • Multiple monitors

  13. Display Only Driver - Under the hood Driver Installation Windows Display Only driver Device Start Report displays and EDID Query for display connectivity state Process mouse pointer data* Render frame and place in system memory Mouse pointer data Process frame data* Provide rich metadata for frame Dirty region, screen to screen move Scan out physically or virtually * Hardware acceleration possible

  14. Microsoft Basic Display Driver • Windows includes a default Display Only Driver • Replaces both the VGASAVE and VGAPNP drivers • Supports Metro style experience and apps • Brings full DirectX capabilities to Server apps • Direct3D 3 - 11.0 APIs • DDRAW and DXVA video processing • Adds support for UEFI GOP • VESA BIOS still supported

  15. Multi Adapter support Vendor WDDM Driver Vendor WDDM Driver Basic Display Driver IHV A IHV B Post Device Non-Post Device

  16. High Performance Computing

  17. Scenarios • Server specifically used for high end computational tasks • Vendor provided WDDM driver OR • Microsoft provided WDDM driver

  18. Full Graphics Driver Types of WDDM Drivers • Windows Vista, Windows 7 and Windows 8 • Render + Display + Protected Video playback • Hardware accelerated Direct3D • Discontinuing support for desktop modes less than 32 Bits Per Pixel • Display Only Driver • Supports display out functionality only • No need for 2D and 3D acceleration in hardware • Supports Metro style experience using inbox software rasterizer • Hardware accelerated (region moves, mouse pointer) • Multiple monitors • Render Only Driver • Supports hardware accelerated 2D and 3D operations • Does not support any display out • No TDR for long compute tasks

  19. WDDM Render only driver • Supports all Render capabilities of WDDM • Works multi-adapter, multi-vendor • Works with Microsoft Basic Display Driver as post device • Easy to modify existing Full WDDM driver to WDDM Render Only driver

  20. Microsoft Basic Render Only Driver • Windows includes a default Render Only Driver • Software rasterizer • Can always be enumerated as an adapter in the system • Identified by DXGI_ADAPTER_FLAG_SOFTWARE • Full D3D 11.0 API support including: • Compute Shader • Dynamic Shader Linkage • Tessellation • Shader Model 5.0 • 16K textures • 8 bits of sub-pixel precision • Indexable samplers • DrawIndirect

  21. Headless System • What is Headless system? • System configuration with NO Graphics hardware • Remote Desktop access only • Currently stub driver or VGA driver needed to emulate Int10 • Windows 8 supports truly Headless systems • No Graphics hardware needed

  22. DirectX in Session 0 • DirectX APIs used in compute scenarios • Video processing • Animation • Compute • Run as a background process without requiring a user to log in • Windows 8 enables all Direct3D APIs in session 0 • Except: DXGISwapchain and DXGIOutput

  23. C++ Accelerated Massive Parallelism What • Part of C++ & Visual Studio v.Next • STL-like library for parallel patterns on large arrays • Builds on Direct3D Why • Performance • Productivity • Portability How #include <amp.h> using namespace concurrency; void AddArrays(int n, int * pA, int * pB, int * pC) { array_view<int,1> a(n, pA); array_view<int,1> b(n, pB); array_view<int,1> sum(n, pC);     parallel_for_each( sum.grid, [=](index<1> idx) restrict(direct3d) {         sum[idx] = a[idx] + b[idx];     } ); }

  24. Remote Desktop Access and Collaboration

  25. Scenarios • Share or Remotely access an existing windows desktop • Desktop Duplication API

  26. Desktop Duplication API • New DXGI Based API for duplicating screen • Designed for remote desktop access and collaboration • Works with Metro style user interface and apps • Bitmap based duplication • Works with DirectX, HTML5, GDI, WPF • Duplication along monitor boundaries • Protected content automatically blocked

  27. Under the hood App Windows Acknowledge duplication Selects monitor(s) to duplicate Process Mouse pointer data* Render frame and place in DX surface Mouse pointer data Process frame data* Provide rich meta data for frame Dirty region, screen to screen move Process data for transmission * Transmit * Hardware acceleration possible

  28. Taking Advantage of the Graphics Driver Model

  29. No change to existing driver • Drivers now certified specifically for Client vs. Server • No support for less than 32 bpp desktop mode • WDDM Driver Moving to Single Graphics Driver Model • VGA Driver • No change • Automatic migration to Microsoft provided inbox Basic Display Driver • Basic Display Driver • IHV provided WDDM Display Only Driver • Hardware XDDM Driver • Virtualized XDDM driver • ISV provided WDDM Display only Driver • XDDM Mirror Driver • Desktop Duplication API • Existing applications will work

  30. Recap • WDDM enables Metro style experiences and apps on server • WDDM has evolved to optimize for Server specific scenarios • Moving from XDDM drivers to WDDM driver is easy • Windows 8 brings infrastructure changes for HPC scenarios

  31. Related sessions • APP-198T: Build assistive technologies for Windows 8 • APP-215T: Certifying graphics experiences on Windows 8 • HW-218T: Understanding the Windows 8 graphics driver model • HW-220C: Chalk Talk: Transitioning from XDDM to WDDM • SAC-428T: Design for a multimillion thin client market with RemoteFX • SAC-642T: Remote desktop experience in Windows 8 • TOOL-802T: Taming GPU compute with C++ AMP • APP-843T: Reaching more customers with accessible Metro style apps in HTML5

  32. Further reading and documentation • WDDM 1.2 whitepaper • Display Only Driver • Documentation – WDK • Sample driver – WDK • Requirements – WHCK • Desktop Duplication API • Documentation – SDK • Sample driver – SDK • Contact info – dxbuildqa@microsoft.com

  33. thank you Feedback and questions http://forums.dev.windows.com Session feedbackhttp://bldw.in/SessionFeedback

  34. © 2011 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