From: Tim Murray <timmurray@google.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Suren Baghdasaryan <surenb@google.com>,
Michal Hocko <mhocko@kernel.org>,
Joel Fernandes <joel@joelfernandes.org>,
LKML <linux-kernel@vger.kernel.org>,
Carmen Jackson <carmenjackson@google.com>,
Mayank Gupta <mayankgupta@google.com>,
Daniel Colascione <dancol@google.com>,
Minchan Kim <minchan@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
kernel-team <kernel-team@android.com>,
"Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>,
Dan Williams <dan.j.williams@intel.com>,
Jerome Glisse <jglisse@redhat.com>,
linux-mm <linux-mm@kvack.org>,
Matthew Wilcox <willy@infradead.org>,
Ralph Campbell <rcampbell@nvidia.com>,
Vlastimil Babka <vbabka@suse.cz>,
Tom Zanussi <zanussi@kernel.org>
Subject: Re: [PATCH v2] mm: emit tracepoint when RSS changes by threshold
Date: Thu, 5 Sep 2019 10:43:28 -0700 [thread overview]
Message-ID: <CAEe=SxmG4oUBUu88NNyOhPC5weExf=UCzLy_pzwg3+CruqO4Cw@mail.gmail.com> (raw)
In-Reply-To: <20190905133507.783c6c61@oasis.local.home>
On Thu, Sep 5, 2019 at 9:03 AM Suren Baghdasaryan <surenb@google.com> wrote:
> I might misunderstand this but is the issue here actually throttling
> of the sheer number of trace records or tracing large enough changes
> to RSS that user might care about? Small changes happen all the time
> but we are likely not interested in those. Surely we could postprocess
> the traces to extract changes large enough to be interesting but why
> capture uninteresting information in the first place? IOW the
> throttling here should be based not on the time between traces but on
> the amount of change of the traced signal. Maybe a generic facility
> like that would be a good idea?
You want two properties from the tracepoint:
- Small fluctuations in the value don't flood the trace buffer. If you
get a new trace event from a process every time kswapd reclaims a
single page from that process, you're going to need an enormous trace
buffer that will have significant side effects on overall system
performance.
- Any spike in memory consumption gets a trace event, regardless of
the duration of that spike. This tracepoint has been incredibly useful
in both understanding the causes of kswapd wakeups and
lowmemorykiller/lmkd kills and evaluating the impact of memory
management changes because it guarantees that any spike appears in the
trace output.
As a result, the RSS tracepoint in particular needs to be throttled
based on the delta of the value, not time. The very first prototype of
the patch emitted a trace event per RSS counter change, and IIRC the
RSS trace events consumed significantly more room in the buffer than
sched_switch (and Android has a lot of sched_switch events). It's not
practical to trace changes in RSS without throttling. If there's a
generic throttling approach that would work here, I'm all for it; like
Dan mentioned, there are many more counters that we would like to
trace in a similar way.
next prev parent reply other threads:[~2019-09-05 17:43 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-03 20:09 Joel Fernandes (Google)
2019-09-04 4:44 ` Suren Baghdasaryan
2019-09-04 4:51 ` Daniel Colascione
2019-09-04 5:15 ` Joel Fernandes
2019-09-04 5:42 ` Daniel Colascione
2019-09-04 14:59 ` Joel Fernandes
2019-09-04 17:15 ` Daniel Colascione
2019-09-04 23:59 ` sspatil
2019-09-04 5:02 ` Joel Fernandes
2019-09-04 5:38 ` Suren Baghdasaryan
2019-09-04 8:45 ` Michal Hocko
2019-09-04 15:32 ` Joel Fernandes
2019-09-04 15:37 ` Michal Hocko
2019-09-04 16:28 ` Joel Fernandes
2019-09-05 10:54 ` Michal Hocko
2019-09-05 14:14 ` Joel Fernandes
2019-09-05 14:20 ` Michal Hocko
2019-09-05 14:23 ` Joel Fernandes
2019-09-05 14:43 ` Michal Hocko
2019-09-05 16:03 ` Suren Baghdasaryan
2019-09-05 17:35 ` Steven Rostedt
2019-09-05 17:39 ` Suren Baghdasaryan
2019-09-05 17:43 ` Tim Murray [this message]
2019-09-05 17:47 ` Joel Fernandes
2019-09-05 17:51 ` Joel Fernandes
2019-09-05 19:56 ` Tom Zanussi
2019-09-05 20:24 ` Daniel Colascione
2019-09-05 20:32 ` Tom Zanussi
2019-09-05 21:14 ` Tom Zanussi
2019-09-05 22:12 ` Daniel Colascione
2019-09-05 22:51 ` Daniel Colascione
2019-09-05 17:50 ` Daniel Colascione
2019-09-06 0:59 ` Joel Fernandes
2019-09-06 1:15 ` Daniel Colascione
2019-09-06 3:01 ` Joel Fernandes
2019-09-04 17:17 ` Daniel Colascione
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='CAEe=SxmG4oUBUu88NNyOhPC5weExf=UCzLy_pzwg3+CruqO4Cw@mail.gmail.com' \
--to=timmurray@google.com \
--cc=akpm@linux-foundation.org \
--cc=aneesh.kumar@linux.ibm.com \
--cc=carmenjackson@google.com \
--cc=dan.j.williams@intel.com \
--cc=dancol@google.com \
--cc=jglisse@redhat.com \
--cc=joel@joelfernandes.org \
--cc=kernel-team@android.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mayankgupta@google.com \
--cc=mhocko@kernel.org \
--cc=minchan@kernel.org \
--cc=rcampbell@nvidia.com \
--cc=rostedt@goodmis.org \
--cc=surenb@google.com \
--cc=vbabka@suse.cz \
--cc=willy@infradead.org \
--cc=zanussi@kernel.org \
/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