I've just done some profiling:

    http://www.netsurf-browser.org/temp/profiles/r12380-bbc.png
    http://www.netsurf-browser.org/temp/profiles/r12380-bbc-news.png
    http://www.netsurf-browser.org/temp/profiles/r12380-gamespot.png

All three tests include browser startup and quit, which are too quick to
really show up.  I didn't do anything once the pages loaded other than
quit, so it's really just showing where time is spent between requesting a
URL and it finishing showing on screen.

As seen in the profiles, most of the time is spent in css_select_style.
On BBC News and Gamespot front pages, css_select_style takes 55% of the
time, and on BBC homepage, it takes 42% of the time.

On the BBC homepage JPEGs cause jpeg_convert to take 13% of the time.
On the other two pages jpeg_convert took 4-5% of the time.
Other image formats like PNG and GIF don't really show up.

Returning to css_select style, and taking BBC News as an example:

  Function            Inclusive   Self
  css_select_style    55.6%       7.8%
  match_details       40.9%       11.9%

I'm not sure how much those functions can be optimised themselves, so
their Self values may be difficult to reduce, but the stuff below
match_details should be improved massively when we are able to switch from
libxml to libdom.  (FWIW, that's 40.9 - 11.9 = 29% ish.)


Also, I've fixed some issues with the scrollbar widget, which was a
frames-handled-in-core prerequisite.

-- 

Michael Drake (tlsa)                  http://www.netsurf-browser.org/

Reply via email to