[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <617E1C2C70743745A92448908E030B2A0153594A@scsmsx411.amr.corp.intel.com>
Date: Thu, 5 Apr 2007 15:50:02 -0700
From: "Luck, Tony" <tony.luck@...el.com>
To: "Christoph Lameter" <clameter@....com>, <akpm@...ux-foundation.org>
Cc: <linux-ia64@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
"Martin Bligh" <mbligh@...gle.com>, <linux-mm@...ck.org>,
"Andi Kleen" <ak@...e.de>, "Dave Hansen" <hansendc@...ibm.com>,
"KAMEZAWA Hiroyuki" <kamezawa.hiroyu@...fujitsu.com>
Subject: RE: [PATCH 4/4] IA64: SPARSE_VIRTUAL 16M page size support
> This implements granule page sized vmemmap support for IA64.
Christoph,
Your calculations here are all based on a granule size of 16M, but
it is possible to configure 64M granules.
With current sizeof(struct page) == 56, a 16M page will hold enough
page structures for about 4.5G of physical space (assuming 16K pages),
so a 64M page would cover 18G.
4.5G is possibly a bit wasteful (for a system with only a handful
of GBytes per node, and nodes that are not physically contiguous).
18G is definitely going to result in lots of wasted page structs
(that refer to non-existant physical memory around the edges of
each node).
Maybe a granule is not the right unit of allocation ... perhaps 4M
would work better (4M/56 ~= 75000 pages ~= 1.1G)? But if this is
too small, then a hard-coded 16M would be better than a granule,
because 64M is (IMHO) too big.
-Tony
P.S. This patch breaks the build for tiger_defconfig, zx1_defconfig
etc. But you may have fit on the "grand-unified theory" of mem_map
management ... so if the benchmarks come in favourably we could
drop all the other CONFIG options.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists