Jason Weber, Lead Program Manager responsible for Internet Explorer Performance, has released some internal data showing where IE 8 spends most of its time while preparing a page then rendering it, suggesting what websites should be focusing on.
According to Weber, Internet Explorer contains 11 subsystems starting with Networking and ending with Rendering:
- Networking – responsible for communication with the server. It includes services like caching the web content.
- HTML – responsible for parsing the HTML document and creating the DOM. There are similar subsystems for XML, XHTML and SVG documents.
- CSS – parsing CSS style and creating a structural representation of it for later use.
- Collections – responsible for storing and accessing HTML metadata.
- JavaScript – executes the scripts.
- Marshalling – represents the layer of communication between the browser and the JavaScript engine.
- Native OM – the JavaScript engine accesses the HTML document through the DOM API contained by this subsystem.
- Formatting – Applies styles to each document component.
- Block Building – Each component of the document receives a rectangular block that will be rendered after being layout.
- Layout – Responsible for laying out all the blocks.
- Rendering – Responsible for the final stage of page loading when all the blocks are drawn onto the screen.
Microsoft has tested IE 8 against 5 major news sites and another 25 AJAX-heavily sites in order to see where the browser spends most of its time when loading a page. The networking performance issues being taken out of the equation, it resulted that some sites are heavy on JavaScript while others spend more time on Marshalling:
For news sites, on average IE 8 spent most time on JavaScript - 29%, followed by Marshalling - 18% and Rendering - 17%.
Microsoft has also profiled 25 AJAX sites including Facebook, Gmail and Hotmail, the results showing that IE 8 spent most time rendering web pages – 31% – followed by JavaScript – 21%, Formatting - 14% and Layout - 12%.
The IE team published some performance results for IE 9 in November last year, showing that IE 9 spent most of its time with JavaScript while loading news pages, but it spent a considerable time with layout for AJAX intensive pages like Excel Web App.
There are no results for the latest IE 9 Preview, which is supposed to change the hierarchy among subsystems, but Weber promises that as “we get closer to the IE9 beta we’ll talk more about how these subsystems come together in IE9 to change the performance characteristics compared to today’s generation of non-hardware accelerated browsers including IE8.” Maybe Microsoft will release the tools used to profile the web pages across different subsystems when it unveils IE 9 beta on September 15th.
Community comments
A typo in the article
by Mohamed Elsherif,
Re: A typo in the article
by Abel Avram,
link?
by Stefan Wenig,
Re: link?
by Abel Avram,
A typo in the article
by Mohamed Elsherif,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hello,
I guess this part has a typo
"The IE team published some performance results for IE 9 in November last year, showing that IE 9 spent most of its time with JavaScript while loading news pages, but it spent a considerable time with layout for AJAX intensive pages like Excel Web App."
I think you mean IE 8 since you said later in the post
"There are no results for the latest IE 9 Preview"
Re: A typo in the article
by Abel Avram,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi Mohammed,
thanks for pointing it out but it is not a typo. I said "There are no results for the latest IE 9 Preview", that is for Preview 4. The IE 9 result I published was for a very early preview of IE. Things have changed a lot during this year considering that many performance issues are addressed late while preparing a release and IE 9 uses the GPU now.
link?
by Stefan Wenig,
Your message is awaiting moderation. Thank you for participating in the discussion.
"Jason Weber, Lead Program Manager responsible for Internet Explorer Performance, has released some internal data"
don't you have a link to share? I'd like to see details for the 25 ajax sites, for instance.
Re: link?
by Abel Avram,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi Stefan, I updated the article adding the link you asked for. Please see the first paragraph.