Messages in this thread | | | Subject | Re: [PATCH 1/1] network memory allocator. | From | Andi Kleen <> | Date | 14 Aug 2006 13:40:21 +0200 |
| |
Evgeniy Polyakov <johnpol@2ka.mipt.ru> writes:
> Design notes. > Original idea was to store meta information used for allocation in an > AVL tree [1], but since I found a way to use some "unused" fields in struct page, > tree is unused in the allocator.
But there seems to be still an AVL tree in there?
> Benchmarks with trivial epoll based web server showed noticeble (more > than 40%) imrovements of the request rates (1600-1800 requests per > second vs. more than 2300 ones). It can be described by more > cache-friendly freeing algorithm, by tighter objects packing and thus > reduced cache line ping-pongs, reduced lookups into higher-layer caches > and so on.
So what are its drawbacks compared to slab/kmalloc?
Also if it really performs that much better it might be a good idea to replace all of kmalloc() with it, but doing that would require a lot more benchmarks with various workloads and small and big machines first.
-Andi
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |