linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Rik van Riel <riel@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	linux-mm <linux-mm@kvack.org>, shak <dshaks@redhat.com>,
	jakub@redhat.com, drepper@redhat.com
Subject: Re: [PATCH] lazy freeing of memory through MADV_FREE
Date: Mon, 23 Apr 2007 20:07:28 +1000	[thread overview]
Message-ID: <462C8560.7060703@yahoo.com.au> (raw)
In-Reply-To: <462C2EDE.4090805@yahoo.com.au>

Nick Piggin wrote:
> Rik van Riel wrote:
> 
>> I've added a 5th column, with just your mmap_sem patch and
>> without my madv_free patch.  It is run with the glibc patch,
>> which should make it fall back to MADV_DONTNEED after the
>> first MADV_FREE call fails.
> 
> 
> Thanks! (I edited slightly so it doesn't wrap)
> 
> 
>>   vanilla   new glibc   madv_free    mmap_sem        both
>> threads
>>
>> 1     610         609         596         534         545
>> 2    1032        1136        1196        1180        1200
>> 4    1070        1128        2014        2027        2024
>> 8    1000        1088        1665        2089        2087
>> 16    779        1073        1310        2012        1999
>>
>>
>> Not doing the mprotect calls is the big one I guess, especially
>> the fact that we don't need to take the mmap_sem for writing.
> 
> 
> Yes.
> 
> 
>> With both our patches, single and two thread performance with
>> MySQL sysbench is somewhat better than with just your patch,
>> 4 and 8 thread performance are basically the same and just
>> your patch gives a slight benefit with 16 threads.
>>
>> I guess I should benchmark up to 64 or 128 threads tomorrow,
>> to see if this is just luck or if the cache benefit of doing
>> the page faults and reusing hot pages is faster than not
>> having page faults at all.
>>
>> I should run some benchmarks on other systems, too.  Some of
>> these results could be an artifact of my quad core CPU.  The
>> results could be very different on other systems...
> 
> 
> I'm getting the 16 core box out of retirement as we speak :)
> 

OK, 10 runs at 1 client, 2.6.21-rc6, MySQL version 5.33, and new
Jakub's glibc gives a 99.9% confidence of:

vanilla:  467.2 +/- 7.9 (tps)
mmap_sem: 470.5 +/- 9.3 (tps)

However, it seems those means jump around a bit from boot to boot,
so there could be some some memory placement luck for cache and/or
NUMA goodness involved.

So I think it is safe to say that the mmap_sem patch doesn't hurt
single threaded performance (from looking at the numbers and the
patch). And that's the most important thing for that patch.

I'll post some scalability results tomorrow. From my first round
of tests, after new glibc and the mmap_sem patch, it doesn't seem
like rwsem improvements, private futexes, or avoiding zero_page
make any significant differences.

I haven't tested your MADV_FREE patch yet.

-- 
SUSE Labs, Novell Inc.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2007-04-23 10:07 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-17  7:15 Rik van Riel
2007-04-19 21:15 ` [PATCH] lazy freeing of memory through MADV_FREE 2/2 Rik van Riel
2007-04-20 21:03   ` Andrew Morton
2007-04-20 21:24     ` Ulrich Drepper
2007-04-21  7:37       ` Hugh Dickins
2007-04-21 16:32         ` Ulrich Drepper
2007-04-20 20:57 ` [PATCH] lazy freeing of memory through MADV_FREE Andrew Morton
2007-04-20 21:38   ` Rik van Riel
2007-04-20 22:06     ` Andrew Morton
2007-04-20 23:52       ` Rik van Riel
2007-04-21  0:48         ` Eric Dumazet
2007-04-21  3:58           ` Rik van Riel
2007-04-21  7:12         ` Jakub Jelinek
2007-04-23  4:36           ` Nick Piggin
2007-04-22  2:36         ` Nick Piggin
2007-04-22  2:50           ` Nick Piggin
2007-04-22  6:31           ` Rik van Riel
2007-04-23  0:16             ` Nick Piggin
2007-04-23  3:53               ` Rik van Riel
2007-04-23  3:58                 ` Nick Piggin
2007-04-23 10:07                   ` Nick Piggin [this message]
2007-04-23 10:12                     ` Rik van Riel
2007-04-23  3:59                 ` Rik van Riel
2007-04-23  9:20                   ` Rik van Riel
2007-04-23 10:21                     ` Nick Piggin
2007-04-23 10:31                       ` Rik van Riel
2007-04-23 10:35                         ` Nick Piggin
2007-04-23 10:44                           ` Rik van Riel
2007-04-24  1:15                             ` Nick Piggin
2007-04-24  1:58                               ` Rik van Riel
2007-04-24  2:16                                 ` Nick Piggin
2007-04-24  4:42                                 ` Paul Mackerras
2007-04-24  5:13                                   ` Rik van Riel
2007-04-24  2:53                           ` Rik van Riel
2007-04-24  3:08                             ` Andrew Morton
2007-04-23 10:44                       ` Jakub Jelinek
2007-04-23 11:45                     ` Rik van Riel
2007-04-23  4:28           ` Rik van Riel
2007-04-21  7:24     ` Hugh Dickins
2007-04-21 18:06       ` Rik van Riel
2007-04-22  8:18 ` Andrew Morton
2007-04-22  9:16   ` Christoph Hellwig
2007-04-22 16:55     ` Ulrich Drepper

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=462C8560.7060703@yahoo.com.au \
    --to=nickpiggin@yahoo.com.au \
    --cc=akpm@linux-foundation.org \
    --cc=drepper@redhat.com \
    --cc=dshaks@redhat.com \
    --cc=jakub@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=riel@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox