State of the Intel Kernel Graphics Driver Daniel Vetter, Intel OTC - - PowerPoint PPT Presentation

state of the intel kernel graphics driver
SMART_READER_LITE
LIVE PREVIEW

State of the Intel Kernel Graphics Driver Daniel Vetter, Intel OTC - - PowerPoint PPT Presentation

State of the Intel Kernel Graphics Driver Daniel Vetter, Intel OTC LinuxTag Berlin 2014 overview review of the past year: features, driver internals, testing & documentation highlights of upcoming platforms: broadwell, baytrail


slide-1
SLIDE 1

State of the Intel Kernel Graphics Driver

Daniel Vetter, Intel OTC LinuxTag Berlin 2014

slide-2
SLIDE 2
  • verview
  • review of the past year: features, driver

internals, testing & documentation

  • highlights of upcoming platforms: broadwell,

baytrail & cherryview

  • future work
slide-3
SLIDE 3

feature work, GEM

  • real per-process isolation, still disabled
  • improved gpu turbo boost/deboost
slide-4
SLIDE 4

feature work, display

  • 4k displays, unfortunately not yet DP MST
  • 3D in the kernel, stack enabling ongoing
  • displayless supprt for servers
slide-5
SLIDE 5

driver internals

  • massive refactoring: irq, GTT, display ...
  • i915.ko is a toolbox to build a Intel GFX driver
slide-6
SLIDE 6

driver internals

  • lots more shared driver helper libraries
  • hdmi infoframes, DP aux (for MST support), ...
slide-7
SLIDE 7

testing with intel-gpu-tools

  • automated tests are a merge requirement
  • over 700 testcases, zarro tests 2 years ago
  • supplements full-stack testing
slide-8
SLIDE 8

i-g-t infrastructure

  • ioctl wrappers, libraries for testing techniques, ...
  • NIH testing framework
  • piglit as testrunner
slide-9
SLIDE 9

testing techniques

  • error path testing with signals
  • prefault disabling, force slowpaths in debugfs
  • gpu hangman
  • pipe CRC based display tests
slide-10
SLIDE 10

in-kernel infrastructure

  • enormous amounts of asserts in display code
  • modeset/pipe configuration tracking/checking
  • fifo underrun reporting
slide-11
SLIDE 11

testing resources

  • i-g-t: http://cgit.freedesktop.org/xorg/app/intel-gpu-tools/
  • piglit: http://piglit.freedesktop.org/
  • i-g-t overview:

http://blog.ffwll.ch/2013/09/more-drmi915-testsuite-infrastructur e.html

  • testing requirements:

http://blog.ffwll.ch/2013/11/testing-requirements-for-drmi915.htm l

slide-12
SLIDE 12

documentation

  • DRM Developer's Guide

http://people.freedesktop.org/~danvet/drm/

  • intel-gpu-tools test API reference

http://people.freedesktop.org/~danvet/igt/

slide-13
SLIDE 13

broadwell

  • gen8 render core: execlists, 48bit ppgtt
  • completely new irq routing
  • display close match to haswell
slide-14
SLIDE 14

baytrail

  • frankenstein display with gen7 render core
  • display goes back to ... gma500, i915, i8xx
  • plus hdmi, DP, MIPI-DSI
slide-15
SLIDE 15

cherryview

  • gen8 render core
  • baytrail display
  • 3rd display pipe
slide-16
SLIDE 16
  • utlook: features
  • runtime PM for Si0x
  • atomic modeset/pageflips
  • fastboot for everyone
slide-17
SLIDE 17
  • utlook: non-features
  • can't talk about new platforms
  • driver documentation
  • new crazy test techniques
  • integrate and exploit gen8 features
slide-18
SLIDE 18

summary

  • lots of work under the hood
  • testing, testing, testing
  • 3 pre-production platforms in upstream
  • more of the same, but a lot more
slide-19
SLIDE 19

statistics: patches

2013 2211 2012 1498 2011 856 2010 985 2009 534 2008 243

slide-20
SLIDE 20

regression fix latency [days]

25% 50% 75% 2011H1 14 44 288 2011H2 15 64 241 2012H1 12 43 117 2012H2 15 54 83 2013H1 13 51 113 2013H2 3 22 89