31 Punkte von xguru 2026-05-24 | 3 Kommentare | Auf WhatsApp teilen
  • Ein universeller Allocator als Drop-in-Ersatz für malloc, der sich ohne Codeänderungen in bestehende Programme integrieren lässt
  • Schneller als jemalloc und tcmalloc und benötigt dabei weniger Speicher: 13 % schneller als tcmalloc, mehr als 2,5× schneller als jemalloc
    • Nicht nur in einzelnen Benchmarks auf Platz 1, sondern bei jeder Art von Workload konstant in der Spitzengruppe
  • Einfache Datenstrukturen mit rund 10k LOC, dadurch leicht zu integrieren und zu portieren, zugleich geeignet für den Betrieb in verteilten Services mit Tausenden von Maschinen
  • Portiert auf viele Betriebssysteme, darunter Windows, macOS, Linux, WASM, verschiedene BSDs, Haiku und MUSL
  • Keine Sorge vor Lock-Contention in Multithreading-Umgebungen
    • Pro Seite sind thread-lokale Free-Listen und Concurrent-Free-Listen getrennt
    • Auch wenn ein anderer Thread Speicher freigibt, reicht ein einziges CAS aus, ohne komplexen Synchronisationscode
  • In C geschrieben. MIT-Lizenz

3 Kommentare

 
barca105 2026-05-27

Bei Thread-Local-Multithreading ist der Unterschied wirklich spürbar. Ich nutze es sehr hilfreich.

 
dudnspa0203 2026-05-25

Es gibt auch eine Arena-Implementierung, daher nutze ich es gerne haha

 
qlghwp123 2026-05-24

Das ist wohl genau das Ding, das letztes Mal im Quellcode von pogocache verwendet wurde.