[Python-de] Speicher Management Frage

Mark Zoeltsch monsoon at t-online.de
Mon Mar 4 16:01:18 EST 2002


Hallo alle miteinander!

Wollte mich gleich mal mit einer Frage in dieser ML vorstellen :)

Ich beschaeftige mich seit kurzem erst mit python (so einen Monat
ungefaehr), daher die Frage wo landet was wann auf welchem 
Speicher? Wenn ich das richtig verstanden hab ist alles in python 2.2
ein objekt (oder gibts da noch Ausnahmen?) und laut der Beschreibung
auf python.org wird damit alles mit malloc/realloc auf den Heap eingerichtet.
Also auch globle Variablen? Die Frage kommt nicht von ungefaehr,
denn mit time.clock() hab ich mal ein paar Messungen gemacht und
gemerkt das Operationen innerhalb von Funktionen (also lokale Variablen)
wesentlich schneller ablaufen, als ihre Gegenstuecke mit globalen Variablen. 
Jetzt frag ich mich schon ein bischen warum, da ich davon ausgehe das alles
auf dem heap landet. Immerhin krieg ich einen Geschwindigkeitsvorteil von 
30% bei mir heraus? Liegt das nur darin begruendet das eine Funktion in
der Stackbasis (sagen wir mal) gecached wird? 

Da ja das ganze auf eine C Implementierung zurueckgreift, sollte ich vielleicht 
noch erwaehnen das ich auf einem Windowssystem arbeite, da ich annehme 
dass das Speicher Management bei UNIX und Mac wohl etwas anders 
aussehen duerfte (oder?)


SEE yA





More information about the Python-de mailing list