<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://git.reviewboard.kde.org/r/111053/">http://git.reviewboard.kde.org/r/111053/</a>
     </td>
    </tr>
   </table>
   <br />





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">This review has been submitted with commit 679fcb31a69194c2d80f0aa0ff9dafeb310b132c by Andrea Diamantini on behalf of Jan Kundrát to branch master.</pre>
 <br />









<p>- Commit</p>


<br />
<p>On June 17th, 2013, 1:39 a.m. UTC, Jan Kundrát wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for rekonq.</div>
<div>By Jan Kundrát.</div>


<p style="color: grey;"><i>Updated June 17, 2013, 1:39 a.m.</i></p>






<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">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.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The speed still sucks, but at least it finishes in a finite amount of time now.

Code is available in kde:clones/rekonq/jkt/jkt-rekonq , branch speedup-history, commit 7c257d7dc1d642cfe39cb687ae7d170ef7624b44.</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>src/rekonqpage/newtabpage.cpp <span style="color: grey">(58451d175045205755d8b0b70e8860a23ac31ab6)</span></li>

</ul>

<p><a href="http://git.reviewboard.kde.org/r/111053/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>








  </div>
 </body>
</html>