pain and redemption on the linux desktop keith packard
play

Pain and Redemption on the Linux Desktop Keith Packard Linux - PowerPoint PPT Presentation

Pain and Redemption on the Linux Desktop Keith Packard Linux Graphics Principal Engineer keith.packard@intel.com 2008 2 1 Pain and Redemption on the Linux Desktop What would make us happy 1 Pain and Redemption on the Linux Desktop


  1. Pain and Redemption on the Linux Desktop Keith Packard Linux Graphics Principal Engineer keith.packard@intel.com 2008 ‒ 2 ‒ 1

  2. Pain and Redemption on the Linux Desktop What would make us happy 1 Pain and Redemption on the Linux Desktop

  3. Pain and Redemption on the Linux Desktop What would make us happy How sad we are today 2 Pain and Redemption on the Linux Desktop

  4. Pain and Redemption on the Linux Desktop What would make us happy How sad we are today Where the ice cream can be found 3 Pain and Redemption on the Linux Desktop

  5. Features of a Happy Desktop Fully composited ( ♥♥♥ compiz ♥♥♥ ) No tearing Integrated video, 3D, 2D APIs Flicker-free boot Fast user switching Hotplug everywhere Lower power Faster. Everywhere. Reducing root code 4 Pain and Redemption on the Linux Desktop

  6. Where Are We Now The long and winding road…

  7. Composted Desktop 2D: Stylin' Textured video works great Overlay video cannot work 3D: not so much 6 Pain and Redemption on the Linux Desktop

  8. Tear Free 3D only Endangers kittens 7 Pain and Redemption on the Linux Desktop

  9. API Integration Video cannot draw to pixmaps Video sometimes uses overlays 3D cannot draw to/from pixmaps 2D cannot draw to/from textures Major loss here. 8 Pain and Redemption on the Linux Desktop

  10. Flicker-free Booting Hardware Logo screen Grub Kernel messages Kernel console font setting Flash to black Flash to backlight off Flash to solid color Flash to GDM login 9 Pain and Redemption on the Linux Desktop

  11. Fast User Switching VT switch is so pretty Limited to one 3D session at a time 10 Pain and Redemption on the Linux Desktop

  12. Hotplug Everywhere Video output switching works finally Cannot resize framebuffer One framebuffer per GPU. GPU limits max width. 11 Pain and Redemption on the Linux Desktop

  13. Lower power Framebuffer Compression 2D spins on GPU 3D melts CPU, has inefficient compiler Video uses small piece of GPU 12 Pain and Redemption on the Linux Desktop

  14. Faster Render needs to be accelerated Video needs MC accel at least 3D GLSL compiler is primitive 13 Pain and Redemption on the Linux Desktop

  15. X Security Issues Entire X server runs as root X server maps all I/O ports X server maps graphics card No longer directly configures PCI (yay!) 14 Pain and Redemption on the Linux Desktop

  16. How Do We Get To Oz? Follow the yellow brick road…

  17. Compositing 3D Applications Eliminate shared back/depth buffers Create per-window back/depth buffers Swap buffers to window redirection buffer DRI2 demo already done by KRH 16 Pain and Redemption on the Linux Desktop

  18. Syncronizing to Retrace 2D application/compositing mgr conventions XvPutImage needs to use DRM buffer swap AIGLX needs to use DRM buffer swap Nothing going on here 17 Pain and Redemption on the Linux Desktop

  19. Integrated drawing APIs Video: XvPutImage to pixmap. Abondon overlays 3D: GLX draw to X pixmaps. X reference GLX textures TTM-based 2D driver on a branch 18 Pain and Redemption on the Linux Desktop

  20. Flicker Free Boot DRM-based mode setting graphical console on top of DRM handwaving for correct default mode DRM stuff is on a branch 19 Pain and Redemption on the Linux Desktop

  21. Fast user switching Multiple DRM masters Multiple frame buffers in DRM Code is in Fedora, not upstream yet 20 Pain and Redemption on the Linux Desktop

  22. Resize framebuffer Move to EXA Finish TTM transition Fix 3D driver to actually check Eric says this requires us to abandon existing DRI apps 21 Pain and Redemption on the Linux Desktop

  23. Shatter: multiple framebuffers Spilt screen across framebuffers Multiple clip lists for each window Multiple back/depth-buffers for each window for 3D Ajax has some ideas and a bit of code 22 Pain and Redemption on the Linux Desktop

  24. Lower power DRM-based 2D drivers XvMC support extended to non-MPEG formats Jbarnes hacking on more LVDS power saving Zhenyu has XvMC for 915 and 965 Airlied has DRM 2D drivers. 23 Pain and Redemption on the Linux Desktop

  25. Faster Pervasive Render acceleration Eric and Carl have 965 going much better 24 Pain and Redemption on the Linux Desktop

  26. Security Kernel mode setting DRM-based 2D drawing X server runs as 'nobody' Jbarnes and Airlied have demos working 25 Pain and Redemption on the Linux Desktop

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend