Review Request 127763: Reduce memory usage footprint
Aleix Pol Gonzalez
aleixpol at kde.org
Thu Apr 28 12:45:00 UTC 2016
> On April 28, 2016, 11:22 a.m., Milian Wolff wrote:
> > could you also have a look at it with heaptrack? it should instantly give you a total number of allocations after finish, which should already give us an indication whether this brings lots to the table. Your callgrind numbers seem to indicate so though. I just feel a bit uneasy with lazy-constructing the string without caching it. If that is happening a lot, you may want to cache the result
>
> Aleix Pol Gonzalez wrote:
> I'll upload the heaptrack files, TBH I don't see a big improvement there (using dolphin, on plasmashell it will definitely show, I guess I should have tested that one :D).
>
> Please note that while you're right, you're also wrong. The string wasn't being used as is, on ::iconPath it needed to have the file appended as well, so the construction at runtime happened as well. The only difference is that we're constructing the path from 3 sources rather than 2.
It went from ~500k allocations to ~450k.
- Aleix
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/127763/#review94948
-----------------------------------------------------------
On April 28, 2016, 2:39 p.m., Aleix Pol Gonzalez wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/127763/
> -----------------------------------------------------------
>
> (Updated April 28, 2016, 2:39 p.m.)
>
>
> Review request for KDE Frameworks and Christoph Feck.
>
>
> Repository: kiconthemes
>
>
> Description
> -------
>
> Leverages the implicitly shared nature of QString by only constructing the paths when it's strictly necessary. It souldn't show a big performance impact since the generated paths were only intermediate in most cases after all.
>
> This is especially important now that plasma has several KIconLoader instances at the same time, but it should have an impact on every application using kiconthemes (or under the plasma-integration effects).
>
>
> Diffs
> -----
>
> src/kicontheme.cpp 735ecf7
>
> Diff: https://git.reviewboard.kde.org/r/127763/diff/
>
>
> Testing
> -------
>
> Tests still pass, apps still work.
>
> Starting and closing dolphin under callgrind showed 1640M instructions, now 1466M(10% improvement).
>
>
> File Attachments
> ----------------
>
> after
> https://git.reviewboard.kde.org/media/uploaded/files/2016/04/28/3f9b64d7-58e0-454b-9774-6ec86aa7f0c3__heaptrack.dolphin.16572-after.gz
> before
> https://git.reviewboard.kde.org/media/uploaded/files/2016/04/28/6229961c-bf00-4959-9fc1-9effa63b2b34__heaptrack.dolphin.16861-before.gz
>
>
> Thanks,
>
> Aleix Pol Gonzalez
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20160428/70c4c303/attachment.html>
More information about the Kde-frameworks-devel
mailing list