edge conf rendering performance panel

22
Rendering Performance Andre Behrens Jonathan Klein Paul Lewis Ariya Hidayat Joshua Peek Eli Fidler Sunday, September 22, 13

Upload: jonathan-klein

Post on 01-Nov-2014

1.327 views

Category:

Technology


0 download

DESCRIPTION

The 10 minute opening talk for the Rendering Performance panel at Edge NY, September 23rd 2013. This was just designed to give a brief overview of the topic before the Q&A portion of the panel.

TRANSCRIPT

Page 1: Edge Conf Rendering Performance Panel

Rendering Performance

Andre BehrensJonathan KleinPaul LewisAriya HidayatJoshua PeekEli Fidler

Sunday, September 22, 13

Page 2: Edge Conf Rendering Performance Panel

60 FPS

Sunday, September 22, 13

Page 3: Edge Conf Rendering Performance Panel

16.6 ms

Sunday, September 22, 13

Page 4: Edge Conf Rendering Performance Panel

Sunday, September 22, 13

Page 5: Edge Conf Rendering Performance Panel

Jank

Sunday, September 22, 13

Page 6: Edge Conf Rendering Performance Panel

What Causes Jank?

Sunday, September 22, 13

Page 7: Edge Conf Rendering Performance Panel

http://jankfree.org/jank-busters-io-2013/template.html#15

Sunday, September 22, 13

Page 8: Edge Conf Rendering Performance Panel

Why Do We Care?

Sunday, September 22, 13

Page 9: Edge Conf Rendering Performance Panel

Facebook artificially slowed down frame rate on iOS and Android to 30 FPS, and “engagement collapsed”

- Shane O'Sullivan, Edge London 2013

Sunday, September 22, 13

Page 10: Edge Conf Rendering Performance Panel

Etsy tested pre-fetching JS on our search results page, which caused jank as the JS finished downloading. All business

metrics we monitored got much worse.- Me, right now

Sunday, September 22, 13

Page 11: Edge Conf Rendering Performance Panel

How Do We Fix It?

Sunday, September 22, 13

Page 12: Edge Conf Rendering Performance Panel

http://jankfree.org/jank-busters-io-2013/template.html#15

Sunday, September 22, 13

Page 13: Edge Conf Rendering Performance Panel

Sunday, September 22, 13

Page 14: Edge Conf Rendering Performance Panel

But Really...

Sunday, September 22, 13

Page 15: Edge Conf Rendering Performance Panel

But Really...

• requestAnimationFrame, not setTimeout

Sunday, September 22, 13

Page 16: Edge Conf Rendering Performance Panel

But Really...

• requestAnimationFrame, not setTimeout• Consistent frame rate > high frame rate

Sunday, September 22, 13

Page 17: Edge Conf Rendering Performance Panel

But Really...

• requestAnimationFrame, not setTimeout• Consistent frame rate > high frame rate• Paint less (batch)

Sunday, September 22, 13

Page 18: Edge Conf Rendering Performance Panel

But Really...

• requestAnimationFrame, not setTimeout• Consistent frame rate > high frame rate• Paint less (batch)

• Consider translateZ hack

Sunday, September 22, 13

Page 19: Edge Conf Rendering Performance Panel

But Really...

• requestAnimationFrame, not setTimeout• Consistent frame rate > high frame rate• Paint less (batch)

• Consider translateZ hack

• Optimize texture uploads to the GPU

Sunday, September 22, 13

Page 21: Edge Conf Rendering Performance Panel

jankfree.org

Sunday, September 22, 13

Page 22: Edge Conf Rendering Performance Panel

Panel

Sunday, September 22, 13