Speicherverbrauch einer PyQt4-Anwendungen

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
twessels
User
Beiträge: 22
Registriert: Freitag 21. Januar 2011, 13:05

Hallo,

wie hoch ist normal der Speicherverbrauch eines PyQt4-Programms?
Das bloße Starten meiner Anwendungen zeigt im Task-Manager eine Speicherbelegung von über 30MB an (also der Task python.exe).
Kann das sein?
Wie gesagt, ich starte nur die Anwendung, das Programm verknüpft im Konstruktor die Singals&Slots und sonst nichts. Hab noch eine Ressource-Datei eingebunden, die ist ca. 2MB groß. Sonst importiere ich nur ein paar Libraries und Dialog-Fenster.

Wie hoch ist bei euch so der Speicherverbrauch und wo könnte mein Problem liegen?



[Nachtrag]
Ich habe gerade die Import-Anweisungen der Dialogfenster auskommentiert und spare dadurch knapp 6MB!!
Die generierten UI-Files können doch nicht so groß sein!?
BlackJack

@twessels: Klar kann das sein. Sehe ich auch nicht unbedingt als problematisch an. Selbst wenn der Rechner nur 1 GiB Arbeitsspeicher hat, sind 30 MiB gerade mal knapp 3% davon.

Bei mir (32-Bit Linux) belegt ein Python-Programm das "nichts" macht ungefähr 13 MiB und wenn ich ``from PyQt4 import Qt, QtCore, QtGui, uic`` dazu schreibe, sind es fast 66 MiB. Ich denke mal bei einem 64-Bit-System dürften die Zahlen noch etwas grösser ausfallen.
twessels
User
Beiträge: 22
Registriert: Freitag 21. Januar 2011, 13:05

Ok. Ist dann wohl der Preis den man für so eine hohe Programmiersprache zahlen muss.
Meine Arbeitskollegen(Embedded-Systems-Entwickler) kämpfen dazu im Vergleich um jede 4kB Page.
Die kriegen Herzbluten, wenn die das sehen.
BlackJack

@twessels: Die Programmieren aber auch in C oder manchmal sogar in Assembler -- da bekommt jeder Anwendungsentwickler Kopfschmerzen. ;-)

In diese kleinen Systeme bekommt man ja auch nicht so viele Objekte. Noch mal ein paar Zahlen: (nahezu) "leeres" Programm: 7889 Python-Objekte mit 0,7 MiB (von Python aus "messbare" Grösse) und bei der zusätzlichen Importzeile mit den Qt-Modulen aus meinem letzten Beitrag: 25.825 Python-Objekte mit 2,4 MiB.
Antworten