<table><tr><td style="">loh.tar updated this revision to Diff 38657.<br />loh.tar edited the summary of this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-wdytighlutoisiz/">(Show Details)</a><br />loh.tar edited the test plan for this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-jzaqqoozu3breg6/">(Show Details)</a><br />loh.tar added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D14408">View Revision</a></tr></table><br /><div><div><p>I would still prefer the original patch but must agree that the benefit is not as much as I thought. <br />
I hope this version is now acceptable.</p>
<ul class="remarkup-list">
<li class="remarkup-list-item">Reduce the check to only the current line as suggested</li>
<li class="remarkup-list-item">Don't change delay timer to avoid possible issue of dispute</li>
<li class="remarkup-list-item">Move m_symbols check where it should be done</li>
<li class="remarkup-list-item">Call slotDocEdited() instead of slotRefreshSymbol() in slotDocChanged() to avoid parsing twice</li>
</ul></div></div><br /><div><strong>CHANGES TO REVISION SUMMARY</strong><div><div style="white-space: pre-wrap; color: #74777D;"> ...to reduce <span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">notably</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">a little bit</span> CPU use<br />
<br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">- Increase</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">- Stop</span> cursor <span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">update delay timer 100->200ms</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">delay timer when document is edited</span><br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">- Stop cursor delay timer when document is edited</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">- Remember current edit line to avoid update </span><br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">- Remember the item/symbol boundaries</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">- Don't parse symbols twice after document change</span><br />
</div></div></div><br /><div><strong>CHANGES TO TEST PLAN</strong><div><div style="white-space: pre-wrap; color: #74777D;"><span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">Compare CPU use with and without this patch.<br />
I have it done the dumb/PI*thumb way:<br />
- Ensure your system is idle, no kernel compiling or such in the background<br />
- Start system activity and ensure its always visible<br />
- Set sorting to CPU use and keep and eye there<br />
- Open some file and move the cursor around, fast, semi fast, slower<br />
- Type something, fast, semi fast, slow, super slow<br />
- Watch espacially when you left some "Symbol Range"<br />
<br />
The next (little) patch will reduse the CPU use once more. Could perhapse sqashed with this one. </span></div></div></div><br /><div><strong>CHANGES SINCE LAST UPDATE</strong><div><a href="https://phabricator.kde.org/D14408?vs=38528&id=38657">https://phabricator.kde.org/D14408?vs=38528&id=38657</a></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D14408">https://phabricator.kde.org/D14408</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>addons/symbolviewer/plugin_katesymbolviewer.cpp<br />
addons/symbolviewer/plugin_katesymbolviewer.h</div></div></div><br /><div><strong>To: </strong>loh.tar, Kate, sars<br /><strong>Cc: </strong>cullmann, brauch, ngraham, sars, kwrite-devel, Kate, michaelh, kevinapavew, demsking, dhaumann<br /></div>