Re: [PATCH 0/5] mm,debug: VM framework to capture memory referencepattern

From: Matt Mackall
Date: Wed Jul 06 2011 - 09:41:21 EST


On Wed, 2011-07-06 at 15:01 +0530, Ankita Garg wrote:
> Hi,
>
> On Wed, Jul 06, 2011 at 02:01:03AM -0700, Andrew Morton wrote:
> > On Tue, 5 Jul 2011 13:52:34 +0530 Ankita Garg <ankita@xxxxxxxxxx> wrote:
> >
> > >
> > > This patch series is an instrumentation/debug infrastructure that captures
> > > the memory reference pattern of applications (workloads).
> >
> > Can't the interfaces described in Documentation/vm/pagemap.txt be used
> > for this?
>
> The pagemap interface does not closely track the hardware reference bit
> of the pages. The 'REFERENCED' flag maintained in /proc/kpageflags
> only indicates if the page has been referenced since last LRU list
> enqueue/requeue. So estimating the rate at which a particular page of
> memory is referenced cannot be obtained. Further, it does not provide
> information on the amount of kernel memory referenced on behalf of
> the process.

Pagemap is good for measuring state and bad for measuring activity.

Computing state from activity via integration is generally impossible
due to the constant term and the possibility of event buffer overruns:

state = integral(activity, t1, t2) + C

Doing the reverse is also generally impossible as it means collecting
extremely large samples at an extremely high resolution to avoid missing
events:

activity = derivative(state, t1, t2)

If you want to measure activity, you want a tracing framework. If you
want to measure state, you want an inspection framework. Trying to build
one from the other just won't work reliably.

--
Mathematics is the supreme nostalgia of our time.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/