TCMalloc: Google veröffentlicht eigene Speicherverwaltung

Die Speicherverwaltung per Malloc und New ist eine der wohl wichtigsten Komponenten in C- und C++-Programmen. Google hat eine deutlich verbesserte Version seiner eigenen Implementierung dafür als Open Source veröffentlicht.

Artikel veröffentlicht am ,
Google hat eine eigene Bibliothek zur Speicherverwaltung als Open Source veröffentlicht.
Google hat eine eigene Bibliothek zur Speicherverwaltung als Open Source veröffentlicht. (Bild: Eric Hamiter, flickr.com/CC-BY-SA 2.0)

Die Entwickler von Google haben ihr internes Projekt TCMalloc als Open Source auf Github veröffentlicht. Wie der Name schon andeutet, handelt es sich dabei um eine Implementierung der dynamischen Speicherverwaltung Malloc der Progammiersprache C sowie darüber hinaus auch für den Operator new für C++. Der Name steht dabei für Thread-Caching Malloc. Das Projekt soll die standardmäßig vom System genutzte Speicherverwaltung ersetzen und nutzt eben einen Cache für Objekte im Speicher. Letzteres geschieht pro Thread oder pro logischer CPU.

Stellenmarkt
  1. System Engineer (m/w/d) Netzwerk und Security
    DATAGROUP Köln GmbH, Köln (Home-Office möglich)
  2. Inhouse IT-Consultant (w/m/d) - Fullstack Java Entwicklung
    Stromnetz Hamburg GmbH, Hamburg
Detailsuche

Von Malloc gibt es viele verschiedene Implementierungen, die von der genutzten Implementierung der Standard-C-Bibliothek abhängen, also etwa Glibc, Musl-Libc oder auch jener aus der LLVM-Compilersammlung. Darüber hinaus gibt es weitere Implementierungen auf Kernel-Ebene und Unterschiede zwischen verschiedenen Betriebssystemen. Eine der wohl bekanntesten eigenständigen Umsetzungen dürfte Jemalloc sein, das in Mozillas Firefox genutzt wird und ebenso in Android, den Datenbanksystemen Cassandra und Redis oder auch dem Varnish HTTP-Cache.

Googles TCMalloc ist dabei zunächst nicht neu. Bereits im Jahr 2011 veröffentlichte das Unternehmen Code dazu als Teil seiner sogenannten Performance Tools. Hauptziel der Implementierung war vor allem, die Geschwindigkeit von Malloc zu erhöhen. Dieses Projekt wird nach wie vor aktiv weiterentwickelt und etwa von der Storage-Software Ceph verwendet.

Bei der nun mit gleichem Namen veröffentlichten Software von Google handelt es sich aber offenbar um eine neue Version des intern stark weiterentwickelten und umgeschrieben Codes. Dem Entwickler Dmitry Vyukov zufolge unterscheiden sich die beiden Versionen stark voneinander. Die neu umgesetzte Zuweisung pro CPU sei etwa in Server-Umgebungen unverzichtbar, in denen Code mit sehr vielen Threads laufe. Ebenso unterstütze das neue TCMalloc Hugepages, die auf x86-Systemen immerhin 2 MByte groß sein könnten. Details zur Funktionsweise liefert die ausführliche Dokumentation auf Github.

Golem Akademie
  1. Einführung in Unity: virtueller Ein-Tages-Workshop
    17. Februar 2022, Virtuell
  2. C++ Programmierung Basics: virtueller Fünf-Tage-Workshop
    28. Februar–4. März 2022, virtuell
Weitere IT-Trainings

Dass Google derartig wichtige Teile des Stapels für Programmiersprache selbst schreibt und anschließend selbst veröffentlicht, ist nicht ungewöhnlich. Mit dem Abseil-Projekt bietet Google etwa auch wichtige Basisbibliotheken für C++ an.

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
Corona-Warn-App
Hohe Kosten, halbherzige Umsetzung

Die digitalen Tools zur Pandemiebekämpfung wie die Corona-Warn-App sind nicht billig. Gerade deshalb sollten sie sinnvoll und effektiv genutzt werden.
Ein IMHO von Friedhelm Greis

Corona-Warn-App: Hohe Kosten, halbherzige Umsetzung
Artikel
  1. Probefahrt mit BMW-Roller CE 04: Beam me up, BMW
    Probefahrt mit BMW-Roller CE 04
    Beam me up, BMW

    Mit futuristischem Design und elektrischem Antrieb hat BMW ein völlig neues Fahrzeug für den urbanen Bereich entwickelt.
    Ein Bericht von Peter Ilg

  2. Pluton in Windows 11: Lenovo will Microsofts Sicherheitschip nicht aktivieren
    Pluton in Windows 11
    Lenovo will Microsofts Sicherheitschip nicht aktivieren

    Die neuen Windows-11-Laptops kommen mit dem Chip Pluton. Lenovo will diesen aber noch nicht selbst aktivieren.

  3. Shopping: Google legt Einspruch gegen 2,42-Milliarden-Strafe ein
    Shopping
    Google legt Einspruch gegen 2,42-Milliarden-Strafe ein

    Nun muss der EuGH entscheiden, ob Google mit der Anzeige seiner Shopping-Angebote in der Suche seine Marktmacht missbraucht.

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
    Daily Deals • RTX 3070 989€ • The A500 Mini Retro-Konsole mit 25 Amiga-Spielen vorbestellbar 189,90€ • RX 6800 16GB 1.129€ • Intel Core i9 3.7 459,50€ Ghz • WD Black 1TB inkl. Kühlkörper PS5-kompatibel 189,99€ • Switch: 3 für 2 Aktion • RX 6700 12GB 869€ • MindStar (u.a. 1TB SSD 69€) [Werbung]
    •  /