[lkml]   [2011]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [RFC][PATCH 1/6] count transparent hugepage splits
On Mon, 31 Jan 2011, Dave Hansen wrote:

> The khugepaged process collapses transparent hugepages for us. Whenever
> it collapses a page into a transparent hugepage, we increment a nice
> global counter exported in sysfs:
> /sys/kernel/mm/transparent_hugepage/khugepaged/pages_collapsed
> But, transparent hugepages also get broken down in quite a few
> places in the kernel. We do not have a good idea how how many of
> those collpased pages are "new" versus how many are just fixing up
> spots that got split a moment before.
> Note: "splits" and "collapses" are opposites in this context.
> This patch adds a new sysfs file:
> /sys/kernel/mm/transparent_hugepage/pages_split
> It is global, like "pages_collapsed", and is incremented whenever any
> transparent hugepage on the system has been broken down in to normal
> PAGE_SIZE base pages. This way, we can get an idea how well khugepaged
> is keeping up collapsing pages that have been split.
> I put it under /sys/kernel/mm/transparent_hugepage/ instead of the
> khugepaged/ directory since it is not strictly related to
> khugepaged; it can get incremented on pages other than those
> collapsed by khugepaged.
> The variable storing this is a plain integer. I needs the same
> amount of locking that 'khugepaged_pages_collapsed' has, for
> instance.

i.e. no global locking, but we've accepted the occassional off-by-one
error (even though splitting of hugepages isn't by any means lightning
fast and the overhead of atomic ops would be negligible).

> Signed-off-by: Dave Hansen <>

Acked-by: David Rientjes <>

 \ /
  Last update: 2011-02-03 22:25    [W:0.130 / U:8.148 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site