31 điểm bởi xguru 2026-05-24 | 3 bình luận | Chia sẻ qua WhatsApp
  • Trình cấp phát đa dụng có thể thay thế malloc theo kiểu drop-in, có thể áp dụng cho các chương trình hiện có mà không cần sửa mã
  • Nhanh hơn jemalloc, tcmalloc và cũng dùng ít bộ nhớ hơn: nhanh hơn 13% so với tcmalloc, và hơn 2,5 lần so với jemalloc
    • Không phải chỉ đứng đầu ở một benchmark cụ thể, mà luôn nằm trong nhóm dẫn đầu với mọi loại workload
  • Cấu trúc dữ liệu đơn giản khoảng 10k LOC giúp dễ tích hợp/port, đồng thời đủ mức độ vận hành cho các dịch vụ phân tán quy mô hàng nghìn máy
  • Đã được port sang nhiều OS như Windows, macOS, Linux, WASM, nhiều biến thể BSD, Haiku, MUSL, v.v.
  • Không phải lo tranh chấp khóa trong môi trường đa luồng
    • Mỗi page tách riêng thread-local free list và concurrent free list
    • Ngay cả khi thread khác giải phóng bộ nhớ thì cũng chỉ cần một lần CAS duy nhất, không cần mã đồng bộ hóa phức tạp
  • Viết bằng C. Giấy phép MIT

3 bình luận

 

Khi dùng đa luồng theo kiểu thread-local thì cảm nhận khác biệt khá rõ. Tôi đang dùng nó khá hữu ích.

 
dudnspa0203 2026-05-25

Có cả triển khai arena nên mình đang dùng khá ổn haha

 
qlghwp123 2026-05-24

Có vẻ là chính cái đó từng được dùng trong mã nguồn pogocache lần trước.