Seite 1 von 1

Wieviel Rechenleistung benötigt QT gegenüber Motif

Verfasst: 30. September 2010 08:07
von qtregen
Hallo zusammen,

ich habe einige Motif Applikationen nun auf QT portiert. Hierbei ist auffällig, dass meine QT-Applikationen deutlich mehr Rechenleistung benötigen, etwa Faktor 5. Ist das halt so oder liegt das an meien nich optimalen Programmieren und Kompilieren. Im Internet habe ich leider keine Hinweise gefunden, dass QT hungriger ist als Motif.

Grüße
Wolfgang

Verfasst: 30. September 2010 09:17
von RavenIV
Es wäre zuerst mal gut zu wissen, was die Anwendung macht und welche Teile von Qt verwendet werden.
Hast Du nur GUI?
Oder auch QList und QVector im Einsatz?
Ist vielleicht auch das Threadmodel der Appl nicht optimal?

Fragen, Fragen, Fragen.

Verfasst: 30. September 2010 11:54
von qtregen
Wie gesagt sind es verschiedene Applikationen mit den unterschiedlichen Elementen. Diese sind auch noch von unterschiedlichen Programmierern geschrieben und halten sich in der Struktur mehr oder weniger an die alte Struktur von Motif

Kurz eine Übersicht:

Appl1: GUI puls QList
Appl2: GUI und QWT
Appl3: GUI mit QTable (etwa 100 Zellen)

Appl3 ist das Sorgenkind. Eine Tabelle deren Anzeigetext alle Sekunde aktualisiert wird. Wenn die Zellen über einen Timer verändert werden liegt der unterschied bei Faktor 10 aber auch wenn sich Zellen nicht verändert werden liegt der Unterschied bei Faktor 5.

Verfasst: 30. September 2010 12:22
von upsala
QTable? Welche Qt-Version verwendest du?

Verfasst: 1. Oktober 2010 10:16
von qtregen
Zurzeit noch 3.3 wollen aber nun auf 4.5 umsteigen. Es ist jedoch so, dass wenn nur die Tabelle angezeigt wird und die Zellen zyklisch mit item->tabelle->item(r,c) und item->text().compare(x) für notwendige Updates abgefragt werden, das Programm deutlich mehr Rechenleistung benötigt.

Verfasst: 2. Oktober 2010 08:41
von upsala
1. Ja Qt kann mehr Rechenleistung als Motif brauchen
2. 'Viel mehr' ist keine Aussage (Fuzzy-Logik ist seit 20 Jahren tot)
3. Sind die beiden Codes wirklich vergleichbar? Über eine Tabelle mit 100 Zeilen zu iterieren dürfte in (fast) keiner Programmiersprache nennenswert Prozessorlast erzeugen.

Verfasst: 19. Oktober 2010 09:51
von MasterK
Klingt für mich so, als wenn da ein tablemodel angebracht wäre.