From: Ingo Molnar <mingo@kernel.org>
To: Vlad Zolotarov <vlad@scalemp.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
linux-kernel <linux-kernel@vger.kernel.org>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
"Shai Fultheim (Shai@ScaleMP.com)" <Shai@scalemp.com>,
Ido Yariv <ido@wizery.com>
Subject: Re: [PATCH v3 0/2] Move x86_cpu_to_apicid to the __read_mostly section
Date: Mon, 21 May 2012 11:06:38 +0200 [thread overview]
Message-ID: <20120521090638.GE31407@gmail.com> (raw)
In-Reply-To: <1337527148.6093.14.camel@vlad>
* Vlad Zolotarov <vlad@scalemp.com> wrote:
> Pls., consider applying this patch series.
> It contains the following changes:
> - Adds two new macros DEFINE_EARLY_PER_CPU_READ_MOSTLY() and
> DECLARE_EARLY_PER_CPU_READ_MOSTLY().
> - Adds "read-mostly" qualifier to the following variables in smp.h:
> - cpu_sibling_map
> - cpu_core_map
> - cpu_llc_shared_map
> - cpu_llc_id
> - cpu_number
> - x86_cpu_to_apicid
> - x86_bios_cpu_apicid
> - x86_cpu_to_logical_apicid
>
> As long as all the variables above are only written during the
> initialization, this change is meant to prevent the false
> sharing and improve the performance on large multiprocessor
> systems.
Mind explaining why it helps performance? Are these percpu
variables also accessed from other CPUs, increasing the cost of
false sharing of cache-lines?
Or is the problem that the 'cache line' size is 4096 bytes on
vSMP, making even singular cache misses expensive and you'd like
to move these next to each other?
So it would be nice to see some before/after PMU stats
demonstrating the improvement. (perf works on vSMP, right?)
Thanks,
Ingo
next prev parent reply other threads:[~2012-05-21 9:06 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-20 15:19 [PATCH v3 0/2] Move x86_cpu_to_apicid to the __read_mostly section Vlad Zolotarov
2012-05-21 9:06 ` Ingo Molnar [this message]
2012-05-21 10:14 ` Shai Fultheim (Shai@ScaleMP.com)
2012-05-21 12:32 ` Ingo Molnar
2012-05-21 13:54 ` Vlad Zolotarov
2012-05-21 14:08 ` Ingo Molnar
2012-05-21 14:56 ` Vlad Zolotarov
2012-05-21 15:21 ` Ingo Molnar
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=20120521090638.GE31407@gmail.com \
--to=mingo@kernel.org \
--cc=Shai@scalemp.com \
--cc=hpa@zytor.com \
--cc=ido@wizery.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=vlad@scalemp.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