托马斯·沃德拉:优化glibc内存分配器(针对Postgres)
原文英文,约2300词,阅读约需9分钟。发表于: 。If you’ve done any Postgres development in C, you’re probably aware of the concept of memory contexts. The primary purpose of memory contexts is to absolve the developers of having to track every...
在Postgres的C开发中,内存上下文用于简化内存管理和提升性能。它通过缓存减少malloc/free调用次数。虽然glibc的内存分配器有并发瓶颈,但可以通过调整MALLOC_TOP_PAD参数优化。Postgres通过内存上下文分组分配,便于释放,但大于8kB的内存块仍需调用malloc,影响性能。建议合理设计分区方案以减少开销。