[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Howto reduce X11 memory usage with several QCanvas / QCanvasView
From: Achim Spangler <Achim.Spangler () mnet-online ! de>
Date: 2004-06-24 19:48:07
Message-ID: 200406242148.07909.Achim.Spangler () mnet-online ! de
[Download RAW message or body]
Hi,
I use umbrello and try to help extending and bugfixing it ( e.g. scaled print,
SVG export, autosave, line width ).
The project file ( .xmi ) of the project I edit with umbrello is around 2 MB
in size and contains quite a lot of diagrams ( around 100 ) with each
containing approximately 10 items ( use case widgets like class, actor, use
case ).
Umbrello creates a pair of QCanvas and QCanvasView instances for each diagram.
The several QCanvas instances are managed by a QWidgetStack.
My problem is now, that the memory footprint of X11 ( i.e. the X-Server
program ) and umbrello is raised to the following values:
VIRT RES SHR S %CPU %MEM TIME+ COMMAND
98452 46m 28m S 56.7 9.3 0:43.84 umbrello
615m 337m 46m S 2.9 67.0 3:32.83 X
^^^^^^^^
( output of "top" )
I tried already to create only one central QCanvasView and to set the
connection of the displayed QCanvas to the currently selected diagram.
But this doesn't help to reduce the X11 memory footprint.
I tried also to use the function QCanvas::retune() to set the chunkSize to 64,
as the average size of the items is around 40.
But also without success.
So I have the following questions:
1) What can cause this high memory usage of X11 ( the umbrello footprint would
be acceptable )?
2) What can be done to reduce the memory usage?
-> is there a possibility to tell X11/Qt to eliminate all
metadata, which is needed for clipping/display control ...
so that this metadata could be re-derived on show-event?
3) What is the difference ( mainly in respect of X11 )
of hide() / setVisible( false ) / raise()->other items for global QCanvas
and all contained items?
( QWidget properties shown, hidden, visible )
Bye,
Achim
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic