Hallo,
ich habe in einer Applikation unter QT 4.7 eine ungewöhnliche CPU Last nach öffnen eines QDialogs.
Ungewöhnlich deshalb, weil die hohe Last nur dann auftritt, wenn das QDialog-Fenster vor einem QSplitter geöffnet wird.
In diesem QSplitter wird jeweils ein QTreeWidget platziert, also links eins und rechts eins. Werden im rechten QTreeWidget jetzt Items geladen und darüber der Dialog geöffnet, steigt die CPU Last um rund 30%
Verschiebe ich das Dialog-Fenster mit der Mouse zu annähernd 100% in die linke Hälfte des Splitters (bzw. vor den zweiten QTreeWidget) sinkt die Last wieder.
Der Dialog kann Programmweit geöffnet werden, das Phänomen tritt nur vor dem gefüllten QTreeWidget auf. (--> Dialog ist in Ordnung)
Setze ich über die WindowFlags das Fenster auf Qt::CustomizeWindowHint bleibt alles im grünen Bereich .
Kann mir das jemand erklären. Fehler meinerseits kann ich fast ausschliessen
Ich sollte noch erwähnen das QT nur im (auf dem) Framebuffer läuft, bzw. mit -qws gestartet wird.
Dabei ist es egal ob die App auf dem Target läuft oder emuliert auf dem Host, das verhalten ist immer gleich.
Im Moment geht es nur um Denkanstösse, bzw. ob ähnliches bekannt ist.
Chris
Ungewöhnlich hohe CPU Auslastung bei QDialog
-
dance-or-die
- Beiträge: 4
- Registriert: 28. August 2011 18:02
-
ScyllaIllciz
- Beiträge: 200
- Registriert: 9. Juli 2010 19:31
Re: Ungewöhnlich hohe CPU Auslastung bei QDialog
Ich arbeite auf Arbeit nur mit Qt Embedded Linux (QWS), habe aber dieses Verhalten noch nicht gesehen.
Wenn Du ein Testprogramm hast, kann ich das Morgen auf der Arbeit testen!
Wenn Du ein Testprogramm hast, kann ich das Morgen auf der Arbeit testen!
-
dance-or-die
- Beiträge: 4
- Registriert: 28. August 2011 18:02
Re: Ungewöhnlich hohe CPU Auslastung bei QDialog
Jo danke für das Angebot.
ich lade mal die Sourcen irgendwo hoch und melde mich dann nochmal.
Kann aber dauern, muss ja sicher gehen das man das auch kompelieren kann. Bei mir funzt das immer erst nach dem Verbiegen
von einigen Systemvariablen
Das ganze kann dann gleich mal als erstes Release angesehen werden.
Es handelt sich um eine Steuersoftware für DMX-fähige Lichteffekte und ist ursprünglich aus dem QLC Projekt von Heikki enstanden. Vor Jahren Habe ich da mal
einige Sachen zu beigesteuert, bis wir uns über die Roadmap nicht mehr einig waren. Ich hatte dann vor daraus ein Standalonegerät zu machen. Mehr dazu unter
http://diy.dod-lighting.de
aber wie das Leben so spielt, wurde nix daraus.
Ich hab jetzt noch einiges an alter Hardware hier rumliegen und betreibe das ganze im Moment als Hobby, mit dem Ziel die Site auf den neuesten Stand zu bringen und ne Lauffähige Software zur Verfügung zu stellen. Eigentlich war die Software immer Lauffähig ist aber mittlerweile völlig verschieden von dem QLC Projekt.
chris
ich lade mal die Sourcen irgendwo hoch und melde mich dann nochmal.
Kann aber dauern, muss ja sicher gehen das man das auch kompelieren kann. Bei mir funzt das immer erst nach dem Verbiegen
von einigen Systemvariablen
Es handelt sich um eine Steuersoftware für DMX-fähige Lichteffekte und ist ursprünglich aus dem QLC Projekt von Heikki enstanden. Vor Jahren Habe ich da mal
einige Sachen zu beigesteuert, bis wir uns über die Roadmap nicht mehr einig waren. Ich hatte dann vor daraus ein Standalonegerät zu machen. Mehr dazu unter
http://diy.dod-lighting.de
aber wie das Leben so spielt, wurde nix daraus.
Ich hab jetzt noch einiges an alter Hardware hier rumliegen und betreibe das ganze im Moment als Hobby, mit dem Ziel die Site auf den neuesten Stand zu bringen und ne Lauffähige Software zur Verfügung zu stellen. Eigentlich war die Software immer Lauffähig ist aber mittlerweile völlig verschieden von dem QLC Projekt.
chris
Re: Ungewöhnlich hohe CPU Auslastung bei QDialog
OT: Kannst du mal wenn du zu viel Zeit hast Screenshots auf deiner Seite ausstellen? Es gibt sicher öfter mal Interessierte, die nicht unbedingt gleich runterladen und installieren möchten. Du hast mich neugierig gemacht und jetzt kann ich noch nicht viel damit anfangen.
Gruß
Jens
Gruß
Jens
-
dance-or-die
- Beiträge: 4
- Registriert: 28. August 2011 18:02
Re: Ungewöhnlich hohe CPU Auslastung bei QDialog
Klar,
wie gesagt, will das endlich mal abschließen.
Falls es nur um die Software geht, empfehle ich QLC. Das hat sicher Hand und Fuss und wird auch ständig weiterentwickelt. Ich habe den Stand von 2005, nur ab und zu mal auf das neuste QT und später auf QTopia angepasst mit einigen Mods in Bezug auf Touchscreens.
Am kommenden WE werd ich wieder was machen und in 2 Wochen habe ich endlich Urlaub
chris
wie gesagt, will das endlich mal abschließen.
Falls es nur um die Software geht, empfehle ich QLC. Das hat sicher Hand und Fuss und wird auch ständig weiterentwickelt. Ich habe den Stand von 2005, nur ab und zu mal auf das neuste QT und später auf QTopia angepasst mit einigen Mods in Bezug auf Touchscreens.
Am kommenden WE werd ich wieder was machen und in 2 Wochen habe ich endlich Urlaub
chris
-
dance-or-die
- Beiträge: 4
- Registriert: 28. August 2011 18:02
Zurück zum Thema
So, Screenshots hab ich hochgeladen. Außerdem habe ich mal mein Problem im Bild festgehalten.
Über den Hauptfenster kann man die CPU Auslastung sehen. Das Progi heißt qlc und hat im ersten Image eine Last von rund 3 Prozent
das Dialogfenster ist geöffnet, allerdings vor einem anderen MainWindow
http://diy.dod-lighting.de/images/stori ... mfoto1.png
Jetzt das Dialogfenster vor dem QTreeWidget, man beachte die hohe Last.
http://diy.dod-lighting.de/images/stori ... mfoto2.png
Zum Schluß das gleiche Fenster mit der Maus verschoben.
http://diy.dod-lighting.de/images/stori ... mfoto3.png
Mir ist aufgefallen, das sich alle Dialoge so verhalten, allerdings vor dem gefüllten QTreeWidget ist es am schlimmsten.
Beim öffnen eines Dialogs steigt die Last normal um ca 2% verschiebt man ihn mit der Maus geht die Last meist wieder auf den Wert, den sie vor dem öffnen hatte.
Ich finde das sehr eigenartig. Ohne Fensterdekoration ist das nicht so. Es liegt auch nicht am Modal oder so. Es muss was mit der Paintengine zu tun haben.
chris
Über den Hauptfenster kann man die CPU Auslastung sehen. Das Progi heißt qlc und hat im ersten Image eine Last von rund 3 Prozent
das Dialogfenster ist geöffnet, allerdings vor einem anderen MainWindow
http://diy.dod-lighting.de/images/stori ... mfoto1.png
Jetzt das Dialogfenster vor dem QTreeWidget, man beachte die hohe Last.
http://diy.dod-lighting.de/images/stori ... mfoto2.png
Zum Schluß das gleiche Fenster mit der Maus verschoben.
http://diy.dod-lighting.de/images/stori ... mfoto3.png
Mir ist aufgefallen, das sich alle Dialoge so verhalten, allerdings vor dem gefüllten QTreeWidget ist es am schlimmsten.
Beim öffnen eines Dialogs steigt die Last normal um ca 2% verschiebt man ihn mit der Maus geht die Last meist wieder auf den Wert, den sie vor dem öffnen hatte.
Ich finde das sehr eigenartig. Ohne Fensterdekoration ist das nicht so. Es liegt auch nicht am Modal oder so. Es muss was mit der Paintengine zu tun haben.
chris