* Perforce change 315120
@ 2011-11-10 18:21 p4admin
0 siblings, 0 replies; only message in thread
From: p4admin @ 2011-11-10 18:21 UTC (permalink / raw)
Cc: Christoph, Lameter, christoph, linux-mm
[-- Attachment #1: Type: text/plain, Size: 2779 bytes --]
Change 315120 by devtools@devtools_gitimport on 2011/11/10 18:21:26
commit a600388d28419305aad3c4c0af52c223cf6fa0af
Author: Zachary Amsden <zach@vmware.com>
Date: Sat Sep 3 15:55:04 2005 -0700
[PATCH] x86: ptep_clear optimization
Add a new accessor for PTEs, which passes the full hint from the mmu_gather
struct; this allows architectures with hardware pagetables to optimize away
atomic PTE operations when destroying an address space. Removing the
locked operation should allow better pipelining of memory access in this
loop. I measured an average savings of 30-35 cycles per zap_pte_range on
the first 500 destructions on Pentium-M, but I believe the optimization
would win more on older processors which still assert the bus lock on xchg
for an exclusive cacheline.
Update: I made some new measurements, and this saves exactly 26 cycles over
ptep_get_and_clear on Pentium M. On P4, with a PAE kernel, this saves 180
cycles per ptep_get_and_clear, for a whopping 92160 cycles savings for a
full address space destruction.
pte_clear_full is not yet used, but is provided for future optimizations
(in particular, when running inside of a hypervisor that queues page table
updates, the full hint allows us to avoid queueing unnecessary page table
update for an address space in the process of being destroyed.
This is not a huge win, but it does help a bit, and sets the stage for
further hypervisor optimization of the mm layer on all architectures.
Signed-off-by: Zachary Amsden <zach@vmware.com>
Cc: Christoph Lameter <christoph@lameter.com>
Cc: <linux-mm@kvack.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Affected files ...
... //sw/components_third_party/linux/git/master/.versions.submit#1698 edit
... //sw/components_third_party/linux/git/master/component/include/asm-generic/pgtable.h#4 edit
... //sw/components_third_party/linux/git/master/component/include/asm-i386/pgtable.h#7 edit
... //sw/components_third_party/linux/git/master/component/mm/memory.c#13 edit
http://serv30:8666/315120?ac=10
The information in this email is confidential. It is intended
solely for the addressee. Access to this email by anyone else
is unauthorised. If you are not the intended recipient, any
disclosure, copying, or distribution is prohibited and may be
unlawful. If you have received this email in error please delete
it immediately and contact commercial@sepura.com.
Sepura plc. Registered Office: Radio House, St Andrew’s Road, Cambridge, CB4 1GR, England. Registered in England and Wales. Registration Number 4353801
[-- Attachment #2: Type: text/html, Size: 3760 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2011-11-10 18:22 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-10 18:21 Perforce change 315120 p4admin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox