<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>