Python: Pypy bekommt neuen Garbage-Collector

Der Python-Interpreter Pypy erhält einen neuen, inkrementellen Garbage-Collector. Dieser soll vor allem wesentlich kürzere Pausen verursachen und Python dadurch auch für Spiele interessanter machen.

Artikel veröffentlicht am ,
Pypy erhält einen inkrementellen Garbage-Collector.
Pypy erhält einen inkrementellen Garbage-Collector. (Bild: Pypy.org)

Wenn ein Programm belegten Speicher nicht mehr benötigt, kommt die Müllabfuhr und räumt den Speicher frei. Dieser mit Garbage Collection bezeichnete Vorgang kann aber zu Pausen führen, in denen das Programm selbst kurz nicht weiter ausgeführt wird. Mit dem neuen Garbage-Collector (GC) des in Python geschriebenen Python-Interpreters Pypy sollen diese Pausen wesentlich verkürzt werden.

Stellenmarkt
  1. SPS-Programmierer / Senior C# .Net Software-Entwickler (m/w/d)
    INSYS TEST SOLUTIONS GmbH, Regensburg
  2. Koordinator (m/w/d) Digitalisierungsprozesse
    Vereinigte Papierwarenfabriken GmbH, Feuchtwangen
Detailsuche

Sehr vereinfacht ausgedrückt, wie die Pypy-Entwickler selbst erklären, überprüft Pypy die Objekte im Speicher "ab und zu" statt zyklisch wie in CPython. Dies allein würde aber noch sehr große Pausen verursachen. Deshalb wird die Untersuchung des Speichers und anschließend dessen Bereinigung mit der neuen Implementierung in vielen kleinen Schritten durchgeführt.

Aus Alt mach Neu

Die große Bereinigung ("major collection"), bei der der komplette verwaltete Speicher überprüft wird, stellte die Entwickler beim Schreiben der schrittweisen Überprüfung allerdings vor ein Problem. Sie mussten verhindern, dass Objekte, die bereits als nicht mehr nötig markiert sind, plötzlich wieder von dem Programm benutzt werden, da die Anwendung weiterläuft und so neue Zeiger erzeugen könnte.

Um dies zu verhindern, nutzt Pypy weiterhin die Schreibbarriere aus der alten Implementierung, die einen Zugriff der Anwendung auf bereits markierte Objekte verhindert. Durch diese Wiederverwendung sei es "eigentlich nicht viel Arbeit" gewesen, den neuen GC zu schreiben ohne größere Änderungen an der Codebasis.

Golem Akademie
  1. Advanced Python - Fortgeschrittene Programmierthemen
    16./17. September 2021, online
  2. Masterclass: Data Science mit Pandas & Python
    9./10. September 2021, online
Weitere IT-Trainings

Ersten Benchmarks des Projekts zufolge haben sich die GC-Pausen deutlich reduziert. Diese fielen von etwa einer Sekunde auf 100 ms und teilweise noch weniger. Das ist für viele Spiele zwar immer noch nicht gut genug, aber aus Sicht der Entwickler immerhin ausreichend.

Die Arbeit an dem neuen GC, der offiziell Incminimark heißt, wurde von der Raspberry-Pi-Foundation gefördert.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Nachhaltigkeit
Amazon beim Aussortieren von Neuwaren zur Zerstörung gefilmt

ITV News hat ein Video veröffentlicht, das Amazon beim Aussortieren neuer Produkte zeigen soll. Dabei geht es um große Stückzahlen.

Nachhaltigkeit: Amazon beim Aussortieren von Neuwaren zur Zerstörung gefilmt
Artikel
  1. Urban Air Mobility: Volocopter fliegt in Paris
    Urban Air Mobility
    Volocopter fliegt in Paris

    Zu den Olympischen Spielen 2024 sollen die Lufttaxis des Unternehmens aus dem Badischen regulär im Einsatz sein.

  2. Amazon Prime Day 2021 - die Highlights am Dienstag
     
    Amazon Prime Day 2021 - die Highlights am Dienstag

    Gestern hat der Prime Day angefangen, heute um Mitternacht ist es schon wieder vorbei. Die letzten Stunden des Verkaufsevents bieten jede Menge Highlights.
    Ausgewählte Angebote des E-Commerce-Teams

  3. Apple Silicon: Apple soll Macbook Air in High-End-Version planen
    Apple Silicon
    Apple soll Macbook Air in High-End-Version planen

    Apple soll ein Macbook Air mit einem flacheren Gehäuse, einem neuen Prozessor und in vielen verschiedenen Farben planen.

AndyK70 16. Okt 2013

Als stable, oder beta? pypy3 2.1 beta1 steht schon zum DL parat


Folgen Sie uns
       


Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Schnäppchen • Amazon Prime Day nur noch heute • Gaming-Laptops von Razer, MSI & Asus • MS Surface Pro 7 664,05€ • Bosch-Werkzeug • RAM von Crucial • Monitore (u. a. Acer 27" WQHD 144Hz 259€) • SSDs (u. a. Sandisk Ultra 3D 1TB 70,29€) • Gaming-Chairs • MM Gönn dir Dienstag [Werbung]
    •  /