D8059: KDevelop: abstractfilemanagerimport benchmark
René J.V. Bertin
noreply at phabricator.kde.org
Fri Sep 29 19:30:27 UTC 2017
rjvbb added a comment.
Some final timing results, from my Linux rig (1.6Ghz N3150, 8Gb RAM, ZFS on an SSHD)
> time abstractfilemanagerpluginimportbenchmark kdevelop-git-5 ~/cworks/Scratch/gcc/gcc-7.2.0 /opt/local/linux-ports
KDirWatch backend: Inotify
Starting import of project # 0 at "/home/bertin/work/src/Scratch/KDE/KF5/kdevelop-git-5"
creating dirwatcher took 0.173 seconds
Starting import of project # 1 at "/home/bertin/cworks/Scratch/gcc/gcc-7.2.0"
creating dirwatcher took 1.019 seconds
Starting import of project # 2 at "/opt/local/linux-ports"
creating dirwatcher took 0.044 seconds
imported project 2 with 5051 files (watched: 5051 ): 0.724 seconds
imported project 0 with 6568 files (watched: 6568 ): 1.949 seconds
imported project 1 with 75038 files (watched: 75038 ): 2.822 seconds
Done.
closing project 0 : 0.01 seconds
closing project 1 : 0.033 seconds
closing project 2 : 0.001 seconds
4.724 user_cpu 1.735 kernel_cpu 0:04.98 total_time 129.5%CPU
Using QFileSystemWatcher:
> time env KDIRWATCH_METHOD=QFSWatch abstractfilemanagerpluginimportbenchmark kdevelop-git-5 ~/cworks/Scratch/gcc/gcc-7.2.0 /opt/local/linux-ports/
KDirWatch backend: QFSWatch
Starting import of project # 0 at "/home/bertin/work/src/Scratch/KDE/KF5/kdevelop-git-5"
creating dirwatcher took 1.398 seconds
Starting import of project # 1 at "/home/bertin/cworks/Scratch/gcc/gcc-7.2.0"
creating dirwatcher took 202.161 seconds
Starting import of project # 2 at "/opt/local/linux-ports"
creating dirwatcher took 2.576 seconds
imported project 2 with 5051 files (watched: 5051 ): 0.749 seconds
imported project 0 with 6568 files (watched: 6568 ): 205.659 seconds
imported project 1 with 75038 files (watched: 75038 ): 5.374 seconds
Done.
closing project 0 : 39.803 seconds
closing project 1 : 257.608 seconds
closing project 2 : 0.01 seconds
515.422 user_cpu 19.418 kernel_cpu 8:27.21 total_time 105.4%CPU
The 2nd timings show how the actual import of the smaller project 0 (KDevelop) is held up by the dirwatcher creation for the big project 1 (GCC 7.2) which is imported a lot faster.
REPOSITORY
R32 KDevelop
REVISION DETAIL
https://phabricator.kde.org/D8059
To: rjvbb, #kdevelop
Cc: kdevelop-devel, geetamc, Pilzschaf, akshaydeo, surgenight, arrowdodger
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20170929/81af2e7f/attachment.html>
More information about the KDevelop-devel
mailing list