REOPENED 101410
Wikipedia articles layout 20 times during load
https://bugs.webkit.org/show_bug.cgi?id=101410
Summary Wikipedia articles layout 20 times during load
Geoffrey Garen
Reported 2012-11-06 16:41:46 PST
Created attachment 172676 [details] dtrace script for counting layouts STEPS TO REPRODUCE: 1. Go to http://en.wikipedia.org/wiki/Steve_jobs --> ~16000 layouts 2. Go to http://en.wikipedia.org/wiki/Banksia_ilicifolia --> ~4000 layouts I'm attaching a dtrace script I used to count layouts.
Attachments
dtrace script for counting layouts (453 bytes, text/plain)
2012-11-06 16:41 PST, Geoffrey Garen
no flags
Fixed script (471 bytes, text/plain)
2012-11-06 17:01 PST, Simon Fraser (smfr)
no flags
dtrace script for counting layouts -- with recursion guard and more precision (504 bytes, application/octet-stream)
2012-11-07 12:29 PST, Geoffrey Garen
no flags
Geoffrey Garen
Comment 1 2012-11-06 16:43:10 PST
Simon Fraser (smfr)
Comment 2 2012-11-06 16:48:17 PST
printf shows about 20 layouts loading http://en.wikipedia.org/wiki/Steve_jobs. Ur script is bad.
Simon Fraser (smfr)
Comment 3 2012-11-06 17:01:00 PST
Created attachment 172678 [details] Fixed script Previous script matched every FrameView*layout* method, like FrameView::layoutRoot(). Even the current script doesn't detect when we bail early from layout().
Geoffrey Garen
Comment 4 2012-11-07 10:45:14 PST
OK. 20 is still a lot more than 1. Instruments shows that 80% of wikipedia article load time is layout. Is there some improvement we can make here?
Antti Koivisto
Comment 5 2012-11-07 12:16:51 PST
There are surely improvements we can make but 1 layout is not a realistic expectation for a page that does dynamic style manipulation during loading.
Geoffrey Garen
Comment 6 2012-11-07 12:29:00 PST
Created attachment 172859 [details] dtrace script for counting layouts -- with recursion guard and more precision Added recursion guard.
Note You need to log in before you can comment on or make changes to this bug.