[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48769D1E.3030003@sgi.com>
Date: Thu, 10 Jul 2008 16:37:02 -0700
From: Mike Travis <travis@....com>
To: "H. Peter Anvin" <hpa@...or.com>
CC: "Eric W. Biederman" <ebiederm@...ssion.com>,
Christoph Lameter <cl@...ux-foundation.org>,
Jeremy Fitzhardinge <jeremy@...p.org>,
Ingo Molnar <mingo@...e.hu>,
Andrew Morton <akpm@...ux-foundation.org>,
Jack Steiner <steiner@....com>, linux-kernel@...r.kernel.org,
Arjan van de Ven <arjan@...radead.org>
Subject: Re: [RFC 00/15] x86_64: Optimize percpu accesses
H. Peter Anvin wrote:
> Mike Travis wrote:
>>
>> The biggest growth came from moving all the xxx[NR_CPUS] arrays into
>> the per cpu area. So you free up a huge amount of unused memory when
>> the NR_CPUS count starts getting into the ozone layer. 4k now, 16k
>> real soon now, ??? future?
>>
>
> Even (or perhaps especially) so, allocating the percpu area in 2 MB
> increments is a total nonstarter. It hurts the small, common
> configurations way too much. For SGI, it's probably fine.
>
> -hpa
Yes, "right-sizing" the kernel for systems from 512M laptops to 4k cpu
systems with memory totally maxed out, using only a binary distribution
has proven tricky (at best... ;-)
One alternative was to only allocate a chunk similar in size to
PERCPU_ENOUGH_ROOM and allow for startup options to create a bigger
space if needed. Though the realloc idea has some merit if we can
validate the non-use of pointers to specific cpu's percpu vars.
(CPU_ALLOC contains a function to dereference a percpu offset.)
The discussion started at:
http://marc.info/?l=linux-kernel&m=121212026716085&w=4
Thanks,
Mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists