From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Alex Shi <alex.shi@intel.com>
Cc: mgorman@suse.de, npiggin@gmail.com, tglx@linutronix.de,
mingo@redhat.com, hpa@zytor.com, arnd@arndb.de,
rostedt@goodmis.org, fweisbec@gmail.com, jeremy@goop.org,
gregkh@linuxfoundation.org, glommer@redhat.com, riel@redhat.com,
luto@mit.edu, avi@redhat.com, len.brown@intel.com,
dhowells@redhat.com, fenghua.yu@intel.com,
borislav.petkov@amd.com, yinghai@kernel.org, ak@linux.intel.com,
cpw@sgi.com, steiner@sgi.com, akpm@linux-foundation.org,
penberg@kernel.org, hughd@google.com, rientjes@google.com,
kosaki.motohiro@jp.fujitsu.com, n-horiguchi@ah.jp.nec.com,
paul.gortmaker@windriver.com, trenn@suse.de, tj@kernel.org,
oleg@redhat.com, axboe@kernel.dk, kamezawa.hiroyu@jp.fujitsu.com,
viro@zeniv.linux.org.uk, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 4/7] x86/tlb: add tlb flush all factor for specific CPUs
Date: Tue, 08 May 2012 17:08:05 +0200 [thread overview]
Message-ID: <1336489685.16236.48.camel@twins> (raw)
In-Reply-To: <1336485790-30902-5-git-send-email-alex.shi@intel.com>
On Tue, 2012-05-08 at 22:03 +0800, Alex Shi wrote:
> +void intel_tlb_flushall_factor_set(struct cpuinfo_x86 *c)
> +{
> + switch (c->x86_model) {
> + case 15: /* original 65 nm celeron/pentium/core2/xeon, "Merom"/"Conroe" */
> + tlb_flushall_factor = 0;
> + break;
Why isn't this is the bottom list of core chips?
> + case 26: /* 45 nm nehalem, "Bloomfield" */
> + case 30: /* 45 nm nehalem, "Lynnfield" */
> + case 37: /* 32 nm nehalem, "Clarkdale" */
> + case 44: /* 32 nm nehalem, "Gulftown" */
> + case 46: /* 45 nm nehalem-ex, "Beckton" */
> + tlb_flushall_factor = 64;
> + break;
> + case 42: /* SandyBridge */
> + case 45: /* SandyBridge, "Romely-EP" */
> + tlb_flushall_factor = 32;
> + break;
> + case 28: /* Atom */
> + case 47: /* 32 nm Xeon E7 */
This is a wsm-ex, right? Why isn't it listed with the other nehalems?
> + case 14: /* 65 nm core solo/duo, "Yonah" */
> + case 22: /* single-core 65 nm celeron/core2solo "Merom-L"/"Conroe-L" */
> + case 23: /* current 45 nm celeron/core2/xeon "Penryn"/"Wolfdale" */
> + case 29: /* six-core 45 nm xeon "Dunnington" */
So never use invlpg for Atom/Core/Core2?
> + default:
> + tlb_flushall_factor = 0;
> + }
> +}
> @@ -364,7 +363,8 @@ flush_all:
> act_entries = tlb_entries > mm->total_vm ?
> mm->total_vm : tlb_entries;
>
> + if ((end - start)/PAGE_SIZE >
> + act_entries/tlb_flushall_factor)
You're doing an actual full division, wouldn't a shift be better?
next prev parent reply other threads:[~2012-05-08 15:08 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-08 14:03 [PATCH v3] TLB flush optimization Alex Shi
2012-05-08 14:03 ` [PATCH v3 1/7] x86/tlb_info: get last level TLB entry number of CPU Alex Shi
2012-05-08 14:03 ` [PATCH v3 2/7] x86/flush_tlb: try flush_tlb_single one by one in flush_tlb_range Alex Shi
2012-05-08 14:03 ` [PATCH v3 3/7] x86/tlb: fall back to flush all when meet a THP large page Alex Shi
2012-05-08 14:03 ` [PATCH v3 4/7] x86/tlb: add tlb flush all factor for specific CPUs Alex Shi
2012-05-08 15:08 ` Peter Zijlstra [this message]
2012-05-09 2:03 ` Alex Shi
2012-05-08 15:12 ` H. Peter Anvin
2012-05-09 2:10 ` Alex Shi
2012-05-08 15:15 ` H. Peter Anvin
2012-05-08 15:56 ` Andi Kleen
2012-05-08 16:40 ` H. Peter Anvin
2012-05-08 15:18 ` H. Peter Anvin
2012-05-09 1:41 ` Alex Shi
2012-05-08 14:03 ` [PATCH v3 5/7] x86/tlb: remove comments for tlb_flush_range implement suggestion Alex Shi
2012-05-09 8:22 ` Nick Piggin
2012-05-08 14:03 ` [PATCH v3 6/7] x86/tlb: optimizing flush_tlb_mm Alex Shi
2012-05-08 15:09 ` Peter Zijlstra
2012-05-08 14:03 ` [PATCH v3 7/7] x86/tlb: add tlb_flushall_factor into sysfs for user change Alex Shi
2012-05-08 15:11 ` Peter Zijlstra
2012-05-08 15:20 ` H. Peter Anvin
2012-05-08 15:25 ` Borislav Petkov
2012-05-08 15:31 ` H. Peter Anvin
2012-05-08 15:41 ` Borislav Petkov
2012-05-08 15:48 ` H. Peter Anvin
2012-05-08 16:10 ` Greg KH
2012-05-08 16:28 ` Borislav Petkov
2012-05-09 5:03 ` Alex Shi
2012-05-08 15:01 ` [PATCH v3] TLB flush optimization Peter Zijlstra
2012-05-09 1:58 ` Alex Shi
2012-05-09 23:45 ` Andi Kleen
2012-05-10 5:06 ` Alex Shi
2012-05-10 7:49 ` HATAYAMA Daisuke
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=1336489685.16236.48.camel@twins \
--to=a.p.zijlstra@chello.nl \
--cc=ak@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=alex.shi@intel.com \
--cc=arnd@arndb.de \
--cc=avi@redhat.com \
--cc=axboe@kernel.dk \
--cc=borislav.petkov@amd.com \
--cc=cpw@sgi.com \
--cc=dhowells@redhat.com \
--cc=fenghua.yu@intel.com \
--cc=fweisbec@gmail.com \
--cc=glommer@redhat.com \
--cc=gregkh@linuxfoundation.org \
--cc=hpa@zytor.com \
--cc=hughd@google.com \
--cc=jeremy@goop.org \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@mit.edu \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=n-horiguchi@ah.jp.nec.com \
--cc=npiggin@gmail.com \
--cc=oleg@redhat.com \
--cc=paul.gortmaker@windriver.com \
--cc=penberg@kernel.org \
--cc=riel@redhat.com \
--cc=rientjes@google.com \
--cc=rostedt@goodmis.org \
--cc=steiner@sgi.com \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--cc=trenn@suse.de \
--cc=viro@zeniv.linux.org.uk \
--cc=yinghai@kernel.org \
/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