[prev in list] [next in list] [prev in thread] [next in thread]
List: konsole-devel
Subject: Re: [Konsole-devel] Review Request: patch to reduce memory usage
From: "Robert Knight" <robertknight () gmail ! com>
Date: 2009-06-08 22:15:35
Message-ID: 20090608221535.21725.57885 () localhost
[Download RAW message or body]
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/802/#review1284
-----------------------------------------------------------
trunk/KDE/kdebase/apps/konsole/src/History.h
<http://reviewboard.kde.org/r/802/#comment803>
Need a better name for this really - CompactHistoryScroll?
trunk/KDE/kdebase/apps/konsole/src/History.cpp
<http://reviewboard.kde.org/r/802/#comment801>
Rather than repeating the comparison of rendition, backgroundColor and \
foregroundColor fields I suggest adding a method to the CharacterFormat class
trunk/KDE/kdebase/apps/konsole/src/History.cpp
<http://reviewboard.kde.org/r/802/#comment802>
use qDeleteAll() to delete every item in a Qt container
- Robert
On 2009-06-08 13:31:10, mick22 wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/802/
> -----------------------------------------------------------
>
> (Updated 2009-06-08 13:31:10)
>
>
> Review request for Konsole.
>
>
> Summary
> -------
>
> Here's a patch that drastically reduces mem usage when a fixed size history is
> used:
> - new history storage type "HistoryTypeQList" (QList-based) set as replacement for \
> HistoryTypeBuffer
> - compact storage for history lines
>
> History lines are stored as an array of chars when possible (i.e. when
> color and rendition flag of all characters in the line are equal). 2 bytes per \
> character + overhead
> When not (easily) possible, it falls back to the current way of storing history \
> lines (array of QVector<Character>). 11 bytes per character + overhead
> Memory usage has been cut down from about 171MB to 55MB for a konsole process
> with 5 tabs, 30000 lines scrollback, 65 chars per line.
>
> Update:
> As suggested in https://bugs.kde.org/show_bug.cgi?id=176974#c20, a formatting array \
> has been introduced in v2 of the patch. The CompactHistoryLine class can now handle \
> single- and multi-color history lines. This replaces v1 of the patch where 2 \
> separate classes were used.
>
> This addresses bug 176974.
> https://bugs.kde.org/show_bug.cgi?id=176974
>
>
> Diffs
> -----
>
> trunk/KDE/kdebase/apps/konsole/src/History.h 978945
> trunk/KDE/kdebase/apps/konsole/src/History.cpp 978945
> trunk/KDE/kdebase/apps/konsole/src/SessionController.cpp 978945
> trunk/KDE/kdebase/apps/konsole/src/SessionManager.cpp 978945
>
> Diff: http://reviewboard.kde.org/r/802/diff
>
>
> Testing
> -------
>
> reasonably tested
>
>
> Thanks,
>
> mick22
>
>
_______________________________________________
konsole-devel mailing list
konsole-devel@kde.org
https://mail.kde.org/mailman/listinfo/konsole-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic