Re: New Memory Manager

From: Date: Tue, 14 Jan 2014 18:21:28 +0000
Subject: Re: New Memory Manager
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to internals+get-71124@lists.php.net to get a copy of this message
On Tue, Jan 14, 2014 at 5:45 PM, Dmitry Stogov <dmitry@zend.com> wrote:
> Of course I tried to plug jemalloc and tcmalloc but they make slowdown
> instead of speedup, mainly because zend_alloc was especially designed for
> PHP and also because they suffer from multi-threading support overhead. On
> the other hand profiling PHP with oprofile I saw a lot of cache misses in
> zend_alloc.c, especially because of linked list handling. So I tried to
> combine the best from all approaches and then spend a couple of week tuning
> it.
>
> Thanks. Dmitry.
>

Yes, I was reading the great job you've done so far !
Looking forward in testing this myself and why not fix bugs or give
some more ideas :-)

Anyway, the different pool sizes is nice.
We already got an idea like this in ZendMM with the "small free block"
VS "free block" linked lists, but the implementation you've done so
far is pretty nice evolution.

I think we can improve stuff by studying more accurate caches for
frequently used C-objects such as zvals or zend_object's structures.

So many ideas, glad to see you're having fun with them ;-)

Julien.P


Thread (14 messages)

« previous php.internals (#71124) next »