[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <461E9D77.4080308@redhat.com>
Date: Thu, 12 Apr 2007 16:58:31 -0400
From: Rik van Riel <riel@...hat.com>
To: Nick Piggin <nickpiggin@...oo.com.au>
CC: Eric Dumazet <dada1@...mosbay.com>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-mm <linux-mm@...ck.org>,
Ulrich Drepper <drepper@...hat.com>
Subject: Re: [PATCH] make MADV_FREE lazily free memory
Nick Piggin wrote:
>> The lazy freeing is aimed at avoiding page faults on memory
>> that is freed and later realloced, which is quite a common
>> thing in many workloads.
>
> I would be interested to see how it performs and what these
> workloads look like, although we do need to fix the basic glibc and
> madvise locking problems first.
The attached graph are results of running the MySQL sysbench
workload on my quad core system. As you can see, performance
with #threads == #cpus (4) almost doubles from 1070 transactions
per second to 2014 transactions/second.
On the high end (16 threads on 4 cpus), performance increases
from 778 transactions/second on vanilla to 1310 transactions/second.
I have also benchmarked running Ulrich's changed glibc on a vanilla
kernel, which gives results somewhere in-between, but much closer to
just the vanilla kernel.
--
Politics is the struggle between those who want to make their country
the best in the world, and those who believe it already is. Each group
calls the other unpatriotic.
View attachment "linux-2.6-madv_free.patch" of type "text/x-patch" (12014 bytes)
Download attachment "mysql.png" of type "image/png" (5126 bytes)
Powered by blists - more mailing lists