From: Matt Mackall <mpm@selenic.com>
To: Ankita Garg <ankita@in.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-mm@kvack.org, svaidy@linux.vnet.ibm.com,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 0/5] mm,debug: VM framework to capture memory reference pattern
Date: Wed, 06 Jul 2011 08:36:34 -0500 [thread overview]
Message-ID: <1309959394.11819.87.camel@calx> (raw)
In-Reply-To: <20110706093146.GB19518@in.ibm.com>
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@in.ibm.com> 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, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
prev parent reply other threads:[~2011-07-06 13:36 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-05 8:22 [PATCH 0/5] mm,debug: VM framework to capture memory reference pattern Ankita Garg
2011-07-05 8:22 ` [PATCH 1/5] Core kernel backend to capture the " Ankita Garg
2011-07-05 8:22 ` [PATCH 2/5] memref module to walk the process page table Ankita Garg
2011-07-05 8:22 ` [PATCH 3/5] Capture kernel memory references Ankita Garg
2011-07-05 8:22 ` [PATCH 4/5] Capture references to page cache pages Ankita Garg
2011-07-05 8:22 ` [PATCH 5/5] Logging the captured reference data Ankita Garg
2011-07-05 23:33 ` [PATCH 0/5] mm,debug: VM framework to capture memory reference pattern Valdis.Kletnieks
2011-07-06 4:27 ` Ankita Garg
2011-07-06 9:01 ` Andrew Morton
2011-07-06 9:31 ` Ankita Garg
2011-07-06 13:36 ` Matt Mackall [this message]
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=1309959394.11819.87.camel@calx \
--to=mpm@selenic.com \
--cc=akpm@linux-foundation.org \
--cc=ankita@in.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=svaidy@linux.vnet.ibm.com \
/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;
as well as URLs for NNTP newsgroup(s).