-
The internal memory allocator had an extra code to keep a list of blocks for small size allocation. This would help to reduce the interactions with the system malloc as the memory would be already allocated from the system, but there's an extra cost associated with that - all the allocations/deallocations must be locked, effectively eliminating any optimizations in the system allocator targeted at multi-threaded applications. While the isc_mem API is still using locks pretty heavily, this is a first step into reducing the memory allocation/deallocation contention.
55ace5d3
Validating GitLab CI configuration…
Learn more