<table><tr><td style="">rjvbb updated this revision to Diff 21680.<br />rjvbb retitled this revision from "KDevelop: project filter support in the abstractfilemanagerplugin import benchmark " to "KDevelop: project filter support in the abstractfilemanagerplugin import benchmark".<br />rjvbb 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/D8579" rel="noreferrer">View Revision</a></tr></table><br /><div><div><p>Filtering has an incidence on the number of items imported so here it does make sense to print that number.</p>
<p>On my Linux rig, using only INotify dirwatching:</p>
<p>Without filtering:</p>
<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">> abstractfilemanagerpluginimportbenchmark gcc-7.2.0
The project filter plugin was not loaded
KDirWatch backend: Inotify
Starting import of project gcc-7.2.0
creating dirwatcher took 2.843 seconds
importing 75038 items into project #0 took 5.306 seconds
Done in 8.149 seconds total
The project filter plugin was not loaded
KDirWatch backend: Inotify
Starting import of project gcc-7.2.0
creating dirwatcher took 2.939 seconds
importing 75038 items into project #0 took 5.022 seconds
Done in 7.962 seconds total
The project filter plugin was not loaded
KDirWatch backend: Inotify
Starting import of project gcc-7.2.0
creating dirwatcher took 2.923 seconds
importing 75038 items into project #0 took 5.111 seconds
Done in 8.035 seconds total
Performance counter stats for 'abstractfilemanagerpluginimportbenchmark gcc-7.2.0' (3 runs):
6751.834141 task-clock:u (msec) # 0.706 CPUs utilized ( +- 0.56% )
0 context-switches:u # 0.000 K/sec
0 cpu-migrations:u # 0.000 K/sec
24,700 page-faults:u # 0.004 M/sec ( +- 0.54% )
5,480,083,797 cycles:u # 0.812 GHz ( +- 0.78% )
3,270,959,423 instructions:u # 0.60 insn per cycle ( +- 0.01% )
781,348,961 branches:u # 115.724 M/sec ( +- 0.01% )
27,707,410 branch-misses:u # 3.55% of all branches ( +- 0.40% )
9.565704674 seconds time elapsed ( +- 1.20% )</pre></div>
<p>With the Project Filter just under 1000 fewer items are imported, but the import duration is much longer:<br />
(this number should be much more representative of the import duration in a real-world session)</p>
<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">> abstractfilemanagerpluginimportbenchmark --withFilters gcc-7.2.0
cannot find .rc file "abstractfilemanagerpluginimportbenchmarkui.rc" for component "abstractfilemanagerpluginimportbenchmark"
KDirWatch backend: Inotify
Starting import of project gcc-7.2.0
creating dirwatcher took 3.078 seconds
importing 74062 items into project #0 took 14.763 seconds
Done in 17.844 seconds total
cannot find .rc file "abstractfilemanagerpluginimportbenchmarkui.rc" for component "abstractfilemanagerpluginimportbenchmark"
KDirWatch backend: Inotify
Starting import of project gcc-7.2.0
creating dirwatcher took 2.967 seconds
importing 74062 items into project #0 took 14.771 seconds
Done in 17.742 seconds total
cannot find .rc file "abstractfilemanagerpluginimportbenchmarkui.rc" for component "abstractfilemanagerpluginimportbenchmark"
KDirWatch backend: Inotify
Starting import of project gcc-7.2.0
creating dirwatcher took 2.913 seconds
importing 74062 items into project #0 took 14.763 seconds
Done in 17.679 seconds total
Performance counter stats for 'abstractfilemanagerpluginimportbenchmark --withFilters gcc-7.2.0' (3 runs):
16657.694614 task-clock:u (msec) # 0.811 CPUs utilized ( +- 0.57% )
0 context-switches:u # 0.000 K/sec
0 cpu-migrations:u # 0.000 K/sec
25,436 page-faults:u # 0.002 M/sec ( +- 0.07% )
21,311,526,918 cycles:u # 1.279 GHz ( +- 0.42% )
21,322,013,689 instructions:u # 1.00 insn per cycle ( +- 0.00% )
3,792,613,704 branches:u # 227.679 M/sec ( +- 0.00% )
52,435,462 branch-misses:u # 1.38% of all branches ( +- 5.63% )
20.531457857 seconds time elapsed ( +- 0.66% )</pre></div></div></div><br /><div><strong>CHANGES SINCE LAST UPDATE</strong><div><a href="https://phabricator.kde.org/D8579?vs=21653&id=21680" rel="noreferrer">https://phabricator.kde.org/D8579?vs=21653&id=21680</a></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D8579" rel="noreferrer">https://phabricator.kde.org/D8579</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>kdevplatform/project/tests/abstractfilemanagerpluginimportbenchmark.cpp</div></div></div><br /><div><strong>To: </strong>rjvbb, KDevelop<br /><strong>Cc: </strong>kdevelop-devel, njensen, geetamc, Pilzschaf, akshaydeo, surgenight, arrowdodger<br /></div>