[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