From: Manfred Spraul <manfred@colorfullife.com>
To: Christoph Lameter <clameter@sgi.com>
Cc: Andi Kleen <ak@muc.de>,
mpm@selenic.com, Marcelo Tosatti <marcelo@kvack.org>,
linux-kernel@vger.kernel.org,
Nick Piggin <nickpiggin@yahoo.com.au>, Andi Kleen <ak@suse.de>,
Dave Chinner <dgc@sgi.com>
Subject: Re: [MODSLAB 3/7] A Kmalloc subsystem
Date: Sat, 19 Aug 2006 09:08:26 +0200 [thread overview]
Message-ID: <44E6B8EA.2010100@colorfullife.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0608170922030.24204@schroedinger.engr.sgi.com>
Christoph Lameter wrote:
>>If you have non-power-of-two caches, you could store the control data at
>>(addr&(~PAGE_SIZE)) - the lookup would be much faster. I wrote a patch a few
>>weeks ago, it's attached.
>>
>>
>
>That would only work for slabs that use order 0 pages.
>
>
>
Most slabs are order 0. Actually: there are only 6 slabs that are not
order 0 (excluding the kmalloc caches) on my system.
What about:
if (unlikely(addr & (~(PAGE_SIZE-1))))
slabp=virt_to_page(addr)->pagefield;
else
slabp=addr & (~(PAGE_SIZE-1));
Modify the kmalloc caches slightly and use non-power-of-2 cache sizes.
Move the kmalloc(PAGE_SIZE) users to gfp.
From my system:
good order 1 slab caches: (i.e.: forcing them to order 0 wastes some memory)
biovec-128
blkdev_queue
mqueue_inode_cache
RAWv6
UDPv6
bogus order 1 caches: (i.e.: they could be order 0 without wasting memory)
biovec-(256)
--
Manfred
next prev parent reply other threads:[~2006-08-19 7:09 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-16 2:22 [MODSLAB 0/7] A modular slab allocator V1 Christoph Lameter
2006-08-16 2:22 ` [MODSLAB 1/7] Extract allocpercpu from Slab Christoph Lameter
2006-08-16 2:22 ` [MODSLAB 2/7] Allocator Framework and misc features Christoph Lameter
2006-08-16 2:22 ` [MODSLAB 3/7] A Kmalloc subsystem Christoph Lameter
2006-08-16 7:43 ` Andi Kleen
2006-08-17 0:24 ` Christoph Lameter
2006-08-17 5:19 ` Manfred Spraul
2006-08-17 11:42 ` Andi Kleen
2006-08-17 16:26 ` Christoph Lameter
2006-08-19 7:08 ` Manfred Spraul [this message]
2006-08-19 16:46 ` Christoph Lameter
2006-08-19 18:54 ` Manfred Spraul
2006-08-19 19:17 ` Christoph Lameter
2006-08-18 6:17 ` Christoph Lameter
2006-08-18 7:17 ` KAMEZAWA Hiroyuki
2006-08-18 16:58 ` Christoph Lameter
2006-08-18 18:19 ` KAMEZAWA Hiroyuki
2006-08-18 18:44 ` Christoph Lameter
2006-08-18 19:13 ` KAMEZAWA Hiroyuki
2006-08-18 19:19 ` Christoph Lameter
2006-08-16 2:22 ` [MODSLAB 4/7] Slabulator: Emulate the existing Slab Layer Christoph Lameter
2006-08-16 2:23 ` [MODSLAB 5/7] A slab allocator: SLABIFIER Christoph Lameter
2006-08-16 2:23 ` [MODSLAB 6/7] A slab allocator: NUMA Slab allocator Christoph Lameter
2006-08-16 2:23 ` [MODSLAB 7/7] A slab allocator: Page " Christoph Lameter
2006-08-16 7:52 ` [MODSLAB 0/7] A modular slab allocator V1 Andi Kleen
2006-08-16 8:41 ` Matt Mackall
2006-08-16 9:38 ` David Chinner
2006-08-16 15:08 ` Christoph Lameter
2006-08-16 15:05 ` Christoph Lameter
2006-08-16 8:12 ` David Chinner
2006-08-16 8:32 ` Andi Kleen
2006-08-16 9:18 ` David Chinner
2006-08-16 15:06 ` Christoph Lameter
2006-08-16 16:15 ` Manfred Spraul
2006-08-16 21:49 ` Christoph Lameter
2006-08-16 22:16 ` Christoph Lameter
2006-08-16 22:34 ` Christoph Lameter
2006-08-16 22:45 ` Christoph Lameter
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=44E6B8EA.2010100@colorfullife.com \
--to=manfred@colorfullife.com \
--cc=ak@muc.de \
--cc=ak@suse.de \
--cc=clameter@sgi.com \
--cc=dgc@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo@kvack.org \
--cc=mpm@selenic.com \
--cc=nickpiggin@yahoo.com.au \
/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