linux-numa.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] hugetlb: V1 Per Node Hugepages attributes
@ 2009-07-29 18:11 Lee Schermerhorn
  2009-07-29 18:11 ` [PATCH 1/4] hugetlb: rework hstate_next_node_* functions Lee Schermerhorn
                   ` (3 more replies)
  0 siblings, 4 replies; 18+ messages in thread
From: Lee Schermerhorn @ 2009-07-29 18:11 UTC (permalink / raw)
  To: linux-mm, linux-numa
  Cc: akpm, Mel Gorman, Greg KH, Nishanth Aravamudan, andi,
	David Rientjes, Adam Litke, Andy Whitcroft, eric.whitney

PATCH/RFC 0/4  V1 Add Per Node Hugepages Attributes

Against:  2.6.31-rc3-mmotm-090716-1432
atop the previously posted alloc_bootmem_hugepages fix.
[http://marc.info/?l=linux-mm&m=124775468226290&w=4]

This is V1 of a third alternative for controlling allocation of
persistent huge pages on a NUMA system.  [Prior alternatives were
separate "hugepages_nodes_allowed" mask and mempolicy-based mask.]
This series implements a per node, per huge pages size, read/write
attribute--nr_hugepages--to query and modify the persistent huge
pages on a specific node.  The series also implements read only
attributes to query free_huge_pages and surplus_free_pages.

This implementation continues to pass the libhugetlbfs functional test
suite.

Some issues/limitations with this series:

1) The series includes a rework/cleanup patch from the "mempolicy-
   based" huge pages series.  I think this rework is worth doing
   which ever method we chose for controlling per node huge pages.

2) The series extends the struct kobject with a private bit field
   to aid the correlation of kobjects with the global or per node
   hstate attributes.  This is not absolutely required, but did 
   simplify the back mapping of kobjects to subsystem objects.

3) The reserved and overcommit counts remain global.  This seems to
   be the most straightforward usage, even in the context of per node
   persistent huge page attributes.  Global reserve and overcommit
   values allow mempolicy to be applied to the huge page allocation
   to satisfy a page fault.  [Some work appears to be needed in
   the per cpuset overcommit limit and reserve accounting, but
   outside of the scope of this series.]

4) This series does not implement a boot command line parameter to
   control per node allocations.  This could be added if needed.

5) Using this method--per node attributes--to control persistent
   huge page allocation will require enhancments to hugeadm, 
   including a new command line syntax for specifying specific
   nodes if we wish to avoid direct accessing of the attributes.

6) I have yet to update the hugetlbfs doc for this alternative.

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2009-08-17 10:07 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-29 18:11 [PATCH 0/4] hugetlb: V1 Per Node Hugepages attributes Lee Schermerhorn
2009-07-29 18:11 ` [PATCH 1/4] hugetlb: rework hstate_next_node_* functions Lee Schermerhorn
2009-07-29 18:11 ` [PATCH 2/4] hugetlb: numafy several functions Lee Schermerhorn
2009-07-29 18:11 ` [PATCH 3/4] hugetlb: add private bit-field to kobject structure Lee Schermerhorn
2009-07-29 18:25   ` Greg KH
2009-07-31 18:59     ` Lee Schermerhorn
2009-07-29 18:12 ` [PATCH 4/4] hugetlb: add per node hstate attributes Lee Schermerhorn
2009-07-30 19:39   ` David Rientjes
2009-07-31 10:36     ` Mel Gorman
2009-07-31 19:10       ` Lee Schermerhorn
2009-08-14 22:38         ` David Rientjes
2009-08-14 23:08           ` Andrew Morton
2009-08-14 23:19             ` Greg KH
2009-08-14 23:53             ` David Rientjes
2009-08-17  1:10               ` Lee Schermerhorn
2009-08-17 10:07                 ` David Rientjes
2009-08-15 10:08           ` Mel Gorman
2009-07-31 19:55       ` David Rientjes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).