Re: [PATCH] MM: implement MADV_FREE lazy freeing of anonymous memory

Nick Piggin
2007-05-04T23:50:11Z

Rik van Riel wrote:
> Nick Piggin wrote:
>
>> Rik van Riel wrote:
>>
>>> With lazy freeing of anonymous pages through MADV_FREE, performance of
>>> the MySQL sysbench workload more than doubles on my quad-core system.
>>
>>
>> OK, I've run some tests on a 16 core Opteron system, both sysbench with
>> MySQL 5.33 (set up as described in the freebsd vs linux page), and with
>> ebizzy.
>>
>> What I found is that, on this system, MADV_FREE performance improvement
>> was in the noise when you look at it on top of the MADV_DONTNEED glibc
>> and down_read(mmap_sem) patch in sysbench.
>
>
> Interesting, very different results from my system.
>
> First, did you run with the properly TLB batched version of
> the MADV_FREE patch? And did you make sure that MADV_FREE
> takes the mmap_sem for reading? Without that, I did see
> a similar thing to what you saw...

Yes and yes (I initially forgot to add MADV_FREE to the down_read
case and saw horrible performance!)

> Secondly, I'll have to try some test runs one of the larger
> systems in the lab.
>
> Maybe the results from my quad core Intel system are not
> typical; maybe the results from your 16 core Opteron are
> not typical. Either way, I want to find out :)

Yep. We might have something like that here, and I'll try with
some other architectures as well next week, if I can get glibc
built.

--
SUSE Labs, Novell Inc.