Review Request 128944: Reduce temporary allocations in the DesktopFileParser
Kai Uwe Broulik
kde at privat.broulik.de
Tue Sep 20 10:44:26 UTC 2016
> On Sept. 19, 2016, 8:08 nachm., Alex Richardson wrote:
> > src/lib/plugin/desktopfileparser.cpp, line 477
> > <https://git.reviewboard.kde.org/r/128944/diff/1/?file=477140#file477140line477>
> >
> > Using readLineInto() is really useful to reduce unnecessary allocations. However the function is quite new: `This function was introduced in Qt 5.5`
> >
> > Do we depend on Qt 5.5 already?
set(REQUIRED_QT_VERSION 5.5.0) says kcoreaddons CMakeLists.txt
- Kai Uwe
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128944/#review99278
-----------------------------------------------------------
On Sept. 19, 2016, 3:20 nachm., Aleix Pol Gonzalez wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/128944/
> -----------------------------------------------------------
>
> (Updated Sept. 19, 2016, 3:20 nachm.)
>
>
> Review request for KDE Frameworks.
>
>
> Repository: kcoreaddons
>
>
> Description
> -------
>
> While analising plasmashell under heaptrack, one of the sore spots is temporary allocations within DesktopFileParser. This improves the situation by:
>
> * Only converting to QString/utf8 once.
> * Using QStringRef instead of fully splitting QString to parse them.
>
>
> Diffs
> -----
>
> src/lib/plugin/desktopfileparser.cpp 2eb198d
> src/lib/plugin/desktopfileparser_p.h c61b297
>
> Diff: https://git.reviewboard.kde.org/r/128944/diff/
>
>
> Testing
> -------
>
> tests still pass, plasma still works normally.
>
> heaptrack plasmashell:
>
> after:
> allocations: 4169312
> leaked allocations: 83225
> temporary allocations: 606902
>
> before:
> allocations: 4680691
> leaked allocations: 84825
> temporary allocations: 819292
>
>
> Thanks,
>
> Aleix Pol Gonzalez
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20160920/e56a9188/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list