Andi Kleen
2b4a08150e
[PATCH] x86-64: Increase TLB flush array size
...
The generic TLB flush functions kept upto 506 pages per
CPU to avoid too frequent IPIs.
This value was done for the L1 cache of older x86 CPUs,
but with modern CPUs it does not make much sense anymore.
TLB flushing is slow enough that using the L2 cache is fine.
This patch increases the flush array on x86-64 to cache
5350 pages. That is roughly 20MB with 4K pages. It speeds
up large munmaps in multithreaded processes on SMP considerably.
The cost is roughly 42k of memory per CPU, which is reasonable.
I only increased it on x86-64 for now, but it would probably
make sense to increase it everywhere. Embedded architectures
with SMP may keep it smaller to save some memory per CPU.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-12 10:49:58 -07:00
..
4level-fixup.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
bitops.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
bug.h
[PATCH] Exterminate PAGE_BUG
2005-05-01 08:59:01 -07:00
cputime.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
div64.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dma-mapping-broken.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dma-mapping.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
emergency-restart.h
[PATCH] Add emergency_restart()
2005-07-26 14:35:41 -07:00
errno-base.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
errno.h
[PATCH] add EOWNERDEAD and ENOTRECOVERABLE version 2
2005-05-01 08:59:06 -07:00
fcntl.h
[PATCH] Clean up struct flock64 definitions
2005-09-07 16:57:38 -07:00
ide_iops.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
iomap.h
[PATCH] add Big Endian variants of ioread/iowrite
2005-04-16 15:25:54 -07:00
ipc.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
local.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
page.h
[PATCH] mm: consolidate get_order
2005-09-05 00:05:39 -07:00
pci-dma-compat.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
pci.h
[PATCH] Make sparc64 use setup-res.c
2005-09-08 14:57:25 -07:00
percpu.h
[PATCH] adjust per_cpu definition in non-SMP case
2005-06-23 09:45:28 -07:00
pgtable-nopmd.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
pgtable-nopud.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
pgtable.h
[PATCH] x86: ptep_clear optimization
2005-09-05 00:05:48 -07:00
resource.h
[PATCH] nice and rt-prio rlimits
2005-05-01 08:59:00 -07:00
rtc.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
sections.h
[PATCH] Kprobes: prevent possible race conditions generic
2005-09-07 16:57:59 -07:00
siginfo.h
[PATCH] consolidate SIGEV_PAD_SIZE
2005-05-01 08:59:08 -07:00
signal.h
[PATCH] asm/signal.h unification
2005-05-04 07:33:15 -07:00
statfs.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
termios.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
tlb.h
[PATCH] x86-64: Increase TLB flush array size
2005-09-12 10:49:58 -07:00
topology.h
[PATCH] x86/x86_64: pcibus_to_node
2005-06-23 09:45:08 -07:00
uaccess.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
unaligned.h
[PATCH] optimise 64bit unaligned access on 32bit kernel
2005-09-07 16:57:36 -07:00
vmlinux.lds.h
[PATCH] i386 / uml: add dwarf sections to static link script
2005-09-10 12:00:17 -07:00
xor.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00