[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kwin
Subject:    Re: Review Request: Perform detection of CompositingPrefs async
From:       "Commit Hook" <null () kde ! org>
Date:       2012-04-29 19:48:27
Message-ID: 20120429194827.10378.32031 () vidsolbach ! de
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


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


This review has been submitted with commit d9a04668f29f4dea5686ba812ca7e369=
bc9dace1 by Martin Gr=C3=A4=C3=9Flin to branch master.

- Commit Hook


On April 29, 2012, 11:18 a.m., Martin Gr=C3=A4=C3=9Flin wrote:
> =

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

> (Updated April 29, 2012, 11:18 a.m.)
> =

> =

> Review request for kwin.
> =

> =

> Description
> -------
> =

> Detecting CompositingPrefs invokes an external program. Waiting
> for this can be moved in a second thread. =

> =

> Due to the introduction of the thread the initialization order
> of KWin is changed: the WindowManager is initialized before the
> Compositor. Interestingly this makes KWin felt more responsive
> as the screen is not frozen for several seconds.
> =

> So what does it gain? the detect method takes 155 msec, waiting for the e=
xternal process to finish is 100 msec. Before the change executing the ctor=
 of Workspace took ~ 3000 msec. So by just having the wait in an external t=
hread we gain about 5 % startup time. Overall the responsiveness is more or=
 less doubled as the ctor now ends after 1860 msec with compositor startup =
in the next event cycle.
> =

> =

> Diffs
> -----
> =

>   kwin/composite.cpp 2ee9e77 =

>   kwin/workspace.h 2f1547f =

> =

> Diff: http://git.reviewboard.kde.org/r/104579/diff/
> =

> =

> Testing
> -------
> =

> =

> Thanks,
> =

> Martin Gr=C3=A4=C3=9Flin
> =

>


[Attachment #5 (text/html)]

<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/104579/">http://git.reviewboard.kde.org/r/104579/</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 d9a04668f29f4dea5686ba812ca7e369bc9dace1 by Martin Gräßlin to \
branch master.</pre>  <br />







<p>- Commit</p>


<br />
<p>On April 29th, 2012, 11:18 a.m., Martin Gräßlin wrote:</p>






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

<div>Review request for kwin.</div>
<div>By Martin Gräßlin.</div>


<p style="color: grey;"><i>Updated April 29, 2012, 11:18 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;">Detecting CompositingPrefs invokes an external program. Waiting for this \
can be moved in a second thread. 

Due to the introduction of the thread the initialization order
of KWin is changed: the WindowManager is initialized before the
Compositor. Interestingly this makes KWin felt more responsive
as the screen is not frozen for several seconds.

So what does it gain? the detect method takes 155 msec, waiting for the external \
process to finish is 100 msec. Before the change executing the ctor of Workspace took \
~ 3000 msec. So by just having the wait in an external thread we gain about 5 % \
startup time. Overall the responsiveness is more or less doubled as the ctor now ends \
after 1860 msec with compositor startup in the next event cycle.</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>kwin/composite.cpp <span style="color: grey">(2ee9e77)</span></li>

 <li>kwin/workspace.h <span style="color: grey">(2f1547f)</span></li>

</ul>

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




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








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



_______________________________________________
kwin mailing list
kwin@kde.org
https://mail.kde.org/mailman/listinfo/kwin


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic