[rekonq] Review Request 111053: Speed up construction of the history page

Jan Kundrát jkt at flaska.net
Mon Jun 17 01:38:45 UTC 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/111053/
-----------------------------------------------------------

Review request for rekonq.


Description
-------

Speed up construction of the history page

The old version was taking ages to even appear on my setup ("ages" being defined
as many minutes at least). Callgrind was crashing, perhaps due to webkit's JIT,
so I simply sampled the backtrace "randomly" by hand to see where the most CPU
time was being spent. These two methods came up way too often, so I did the
following:

1) Do not use KIconLoader within the inner loop, it's slow. It was slow when I
debugged too long startup of KPhotoAlbum, it produced visible file IO, and it is
trivial to speed this up. However, it was still taking time.

2) Do not request the ".historyitem" over and over again. A cached "pre-found"
copy (we're still cloning it) seems to help.

Together, these make it possible to load the history in <4 minutes here. It's
still a completely insane amount of time, but at least it appears, ultimately.


Diffs
-----

  src/rekonqpage/newtabpage.cpp 58451d175045205755d8b0b70e8860a23ac31ab6 

Diff: http://git.reviewboard.kde.org/r/111053/diff/


Testing
-------

The speed still sucks, but at least it finishes in a finite amount of time now.


Thanks,

Jan Kundrát

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/rekonq/attachments/20130617/a7bd8708/attachment.html>


More information about the rekonq mailing list