From: Jack Steiner <steiner@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: Re: [IA64] Set default page size to 64k
Date: Fri, 08 Jun 2007 01:33:13 +0000 [thread overview]
Message-ID: <20070608013313.GA17894@sgi.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0706071803570.14490@schroedinger.engr.sgi.com>
On Thu, Jun 07, 2007 at 06:05:46PM -0700, Christoph Lameter wrote:
> It seems that 16k page size causes Itanium processors to have significant
> TLB overhead when the working set is growing beyond 2M. Setting the
> page size to 64k reduces this problem.
At one time, there were file system issues with 64K pages. I _hope_ that these have
been fixed. I'll cc Dave Chinner for his 2 cents.
Note that changing the IA64 default doesn't really help customers - the
distros also need to change. Changing the default to 64K will
help determine if there are any additional issues that need to be fixed.
Distros will have more confidence in 64K if it's the default in the
community kernel.
>
> See the paper of the researchers at the TU Dresden on TLB issues:
> http://www.cs.utah.edu/wmpi/2006/final-version/wmpi-posters-3-Juckeland.pdf
> and my presentation
> http://ftp.kernel.org/pub/linux/kernel/people/christoph/gelato/gelato2007-tlb-tricks.pdf.
>
> SLUB can also take advantage of the larger page sizes. A kernel compile is
> already ~5-10% faster with 16k. This will increase the speed even more. It
> will also increase the effectiveness of slab reclaim because more objects
> can be processed with a single acquisition of the dcache or inode lock.
>
> We at SGI have begun to see livelocks because of too much activity on various
> locks. This is simply because there are too many pages in the system which
> require frequent taking of locks. Going to 64k page size will reduce the frequency
> of taking locks by a factor of 4.
>
> IA64 systems typically have very large memory capacities. Going to 64k will increase
> the memory footprint but I think we are willling to make that sacrifice for the
> speed the larger page size brings us.
>
> Signed-off-by: Christoph Lameter <clameter@sgi.com>
>
> Index: slub/arch/ia64/Kconfig
> =================================> --- slub.orig/arch/ia64/Kconfig 2007-05-31 11:44:50.000000000 -0700
> +++ slub/arch/ia64/Kconfig 2007-06-07 17:39:02.000000000 -0700
> @@ -168,7 +168,7 @@ endchoice
>
> choice
> prompt "Kernel page size"
> - default IA64_PAGE_SIZE_16KB
> + default IA64_PAGE_SIZE_64KB
>
> config IA64_PAGE_SIZE_4KB
> bool "4KB"
> Index: slub/arch/ia64/configs/sn2_defconfig
> =================================> --- slub.orig/arch/ia64/configs/sn2_defconfig 2007-06-07 17:41:22.000000000 -0700
> +++ slub/arch/ia64/configs/sn2_defconfig 2007-06-07 17:56:34.000000000 -0700
> @@ -110,8 +110,8 @@ CONFIG_IA64_SGI_SN2=y
> CONFIG_MCKINLEY=y
> # CONFIG_IA64_PAGE_SIZE_4KB is not set
> # CONFIG_IA64_PAGE_SIZE_8KB is not set
> -CONFIG_IA64_PAGE_SIZE_16KB=y
> -# CONFIG_IA64_PAGE_SIZE_64KB is not set
> +# CONFIG_IA64_PAGE_SIZE_16KB is not set
> +CONFIG_IA64_PAGE_SIZE_64KB=y
> # CONFIG_PGTABLE_3 is not set
> CONFIG_PGTABLE_4=y
> # CONFIG_HZ_100 is not set
> Index: slub/arch/ia64/configs/gensparse_defconfig
> =================================> --- slub.orig/arch/ia64/configs/gensparse_defconfig 2007-06-07 17:56:54.000000000 -0700
> +++ slub/arch/ia64/configs/gensparse_defconfig 2007-06-07 17:57:24.000000000 -0700
> @@ -101,8 +101,8 @@ CONFIG_IA64_GENERIC=y
> CONFIG_MCKINLEY=y
> # CONFIG_IA64_PAGE_SIZE_4KB is not set
> # CONFIG_IA64_PAGE_SIZE_8KB is not set
> -CONFIG_IA64_PAGE_SIZE_16KB=y
> -# CONFIG_IA64_PAGE_SIZE_64KB is not set
> +# CONFIG_IA64_PAGE_SIZE_16KB is not set
> +CONFIG_IA64_PAGE_SIZE_64KB=y
> CONFIG_PGTABLE_3=y
> # CONFIG_PGTABLE_4 is not set
> # CONFIG_HZ_100 is not set
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Thanks
Jack Steiner (steiner@sgi.com) 651-683-5302
Principal Engineer SGI - Silicon Graphics, Inc.
next prev parent reply other threads:[~2007-06-08 1:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-08 1:05 [IA64] Set default page size to 64k Christoph Lameter
2007-06-08 1:33 ` Jack Steiner [this message]
2007-06-08 2:09 ` Boehm, Hans
2007-06-08 2:22 ` Christoph Lameter
2007-06-08 4:33 ` Luck, Tony
2007-06-08 4:39 ` Luck, Tony
2007-06-08 4:43 ` Christoph Lameter
2007-06-08 5:59 ` Hans Boehm
2007-06-08 6:00 ` Christoph Lameter
2007-06-08 20:52 ` Luck, Tony
2007-06-08 21:02 ` Christoph Lameter
2007-06-09 0:03 ` Christoph Lameter
2007-06-12 16:45 ` Luck, Tony
2007-06-12 18:05 ` Christoph Lameter
2007-06-13 11:01 ` Jes Sorensen
2007-06-14 9:29 ` Andreas Schwab
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=20070608013313.GA17894@sgi.com \
--to=steiner@sgi.com \
--cc=linux-ia64@vger.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