LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Mike Travis <travis@sgi.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Andi Kleen <ak@suse.de>,
Andrew Morton <akpm@linux-foundation.org>,
Christoph Lameter <clameter@sgi.com>,
Jack Steiner <steiner@sgi.com>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 00/10] x86: Reduce memory and intra-node effects with large count NR_CPUs
Date: Mon, 14 Jan 2008 10:00:49 -0800 [thread overview]
Message-ID: <478BA351.2000501@sgi.com> (raw)
In-Reply-To: <20080114101133.GA23238@elte.hu>
Ingo Molnar wrote:
> * Andi Kleen <ak@suse.de> wrote:
>
>>> i.e. we've got ~22K bloat per CPU - which is not bad, but because
>>> it's a static component, it hurts smaller boxes. For distributors to
>>> enable CONFIG_NR_CPU=1024 by default i guess that bloat has to drop
>>> below 1-2K per CPU :-/ [that would still mean 1-2MB total bloat but
>>> that's much more acceptable than 23MB]
>> Even 1-2MB overhead would be too much for distributors I think.
>> Ideally there must be near zero overhead for possible CPUs (and I see
>> no principle reason why this is not possible) Worst case a low few
>> hundred KBs, but even that would be much.
>
> i think this patchset already gives a net win, by moving stuff from
> NR_CPUS arrays into per_cpu area. (Travis please confirm that this is
> indeed what the numbers show)
>
> The (total-)size of the per-cpu area(s) grows linearly with the number
> of CPUs, so we'll have the expected near-zero overhead on 4-8-16-32 CPUs
> and the expected larger total overhead on 1024 CPUs.
>
> Ingo
Yes, and it's just the first step. Ideally, there is *no* extra memory
used by specifying NR_CPUS = <whatever> and all the extra memory only
comes into play when they are "possible/probable". This means that almost
all of the data needs to be in the percpu area (and compact that as much
as possible) or in the initdata section and discarded after use.
And Andi is right, the distributors will not default the NR_CPUS to a large
value unless there is zero or very little overhead. And since so much
depends on using standard configurations (certifications, etc.) we cannot
depend on a special build.
Thanks,
Mike
prev parent reply other threads:[~2008-01-14 18:01 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-13 18:34 [PATCH 00/10] x86: Reduce memory and intra-node effects with large count NR_CPUs travis
2008-01-13 18:34 ` [PATCH 01/10] x86: Change size of APICIDs from u8 to u16 travis
2008-01-14 12:23 ` Mel Gorman
2008-01-14 18:13 ` Mike Travis
2008-01-14 19:26 ` Mike Travis
2008-01-14 18:10 ` Jan Engelhardt
2008-01-14 18:22 ` Mike Travis
2008-01-14 18:32 ` Mike Travis
2008-01-14 19:16 ` Christoph Lameter
2008-01-13 18:34 ` [PATCH 02/10] x86: Change size of node ids " travis
2008-01-13 20:01 ` Eric Dumazet
2008-01-13 18:34 ` [PATCH 03/10] x86: Change NR_CPUS arrays in powernow-k8 travis
2008-01-13 18:34 ` [PATCH 04/10] x86: Change NR_CPUS arrays in intel_cacheinfo travis
2008-01-13 18:34 ` [PATCH 05/10] x86: Change NR_CPUS arrays in smpboot_64 travis
2008-01-13 18:34 ` [PATCH 06/10] x86: Change NR_CPUS arrays in topology travis
2008-01-14 18:25 ` Jan Engelhardt
2008-01-14 19:08 ` Mike Travis
2008-01-13 18:35 ` [PATCH 07/10] x86: Cleanup x86_cpu_to_apicid references travis
2008-01-13 18:35 ` [PATCH 08/10] x86: Change NR_CPUS arrays in numa_64 travis
2008-01-14 11:14 ` Ingo Molnar
2008-01-14 17:17 ` Mike Travis
2008-01-14 18:14 ` Jan Engelhardt
2008-01-13 18:35 ` [PATCH 09/10] x86: Change NR_CPUS arrays in acpi-cpufreq travis
2008-01-13 18:35 ` [PATCH 10/10] x86: Change bios_cpu_apicid to percpu data variable travis
2008-01-14 8:14 ` [PATCH 00/10] x86: Reduce memory and intra-node effects with large count NR_CPUs Ingo Molnar
2008-01-14 9:00 ` Ingo Molnar
2008-01-14 17:52 ` Mike Travis
2008-01-14 10:04 ` Andi Kleen
2008-01-14 10:11 ` Ingo Molnar
2008-01-14 11:30 ` Andi Kleen
2008-01-16 7:34 ` Nick Piggin
2008-01-16 18:07 ` Christoph Lameter
2008-01-14 18:00 ` Mike Travis [this message]
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=478BA351.2000501@sgi.com \
--to=travis@sgi.com \
--cc=ak@suse.de \
--cc=akpm@linux-foundation.org \
--cc=clameter@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mingo@elte.hu \
--cc=steiner@sgi.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;
as well as URLs for NNTP newsgroup(s).