~/talk

WebKit Rendering: Overview for HTML5 Developers

Talkat HTML5DevConf 2013 · 2013-04-01..04-03· [web-platform, web-performance]
speakerdeck:ariya
slides:none on file

WebKit has ~150,000 revisions and averages ~3,000 commits/month with about 10% tests; HTML5 parsing is ~10,000 lines and the tokenizer implements ~70 states, and recent builds add a threaded HTML parser to avoid UI blocking. Rendering constructs DOM → render tree → layout → paint, then a compositor uses per-element backing stores and layers; performance problems come from repeated texture upload count when changing colors or filters, while transforms and opacity animate smoothly because GPU already holds textures.

AI-written summary · about

  1. 0:00Intro
  2. 2:03Heavy on TDD
  3. 2:36Involvement: Social Layers
  4. 3:43Big Players
  5. 4:19Browser at a High Level
  6. 5:00WebKit Components
  7. 5:34Platform Abstraction
  8. 7:43Loader Resource, Document, Frame, Page
  9. 8:51Browser Caches
  10. 9:09HTML Tokenizer
  11. 9:55HTML Parser
  12. 11:00Preloader Scanner
  13. 12:22DOM Tree vs Render Tree
  14. 14:45Style Recalc vs Layout
  15. 15:15Effects of Style Recalc and Layout
  16. 16:00Minimizing Layout
  17. 16:31Goals of Painting
  18. 17:04Graphics Abstraction
  19. 17:58CSS Painting: 10 Stages
  20. 18:21Painting Flow: Browser vs Webkit
  21. 19:21Stroke and Brush
  22. 20:01Painting Complexity
  23. 21:33Graphics Processing Unit
  24. 22:15Efficient Uses of GPU
  25. 23:04Responsive Interface
  26. 23:15Maps
  27. 23:36Rendering vs Interaction
  28. 24:04Checkerboard Pattern
  29. 24:34Pinch to Zoom
  30. 24:44Progressive Rendering
  31. 25:01Tile Transformation
  32. 25:49Tiling System
  33. 26:41Mechanics of Animation
  34. 27:44Element and Logical 3-D
  35. 29:22Compositing Indicators
  36. 29:51Frame Rate HUD
  37. 30:33Avoid Texture Reupload
  38. 34:42Photon CSS Lighting
  39. 36:17Timer Latency
  40. 36:31Prepare and Reuse
  41. 38:28Color Transition Trick
  42. 39:06Rendering Aspects
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.