From: Peter Zijlstra <peterz@infradead.org>
To: Johannes Weiner <hannes@cmpxchg.org>
Cc: Huangzhaoyang <huangzhaoyang@gmail.com>,
Andrew Morton <akpm@linux-foundation.org>,
Michal Hocko <mhocko@kernel.org>,
Vladimir Davydov <vdavydov.dev@gmail.com>,
Zhaoyang Huang <zhaoyang.huang@unisoc.com>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [Resend PATCH] psi : calc cfs task memstall time more precisely
Date: Fri, 12 Nov 2021 20:23:29 +0100 [thread overview]
Message-ID: <20211112192329.GL174703@worktop.programming.kicks-ass.net> (raw)
In-Reply-To: <YY6X+HPS8A4sLEiO@cmpxchg.org>
On Fri, Nov 12, 2021 at 11:36:08AM -0500, Johannes Weiner wrote:
> On Tue, Nov 09, 2021 at 03:56:36PM +0100, Peter Zijlstra wrote:
> > I think that focus on RT/IRQ is mis-guided here, and the implementation
> > is horrendous.
> >
> > So the fundamental question seems to be; and I think Johannes is the one
> > to answer that: What time-base do these metrics want to use?
> >
> > Do some of these states want to account in task-time instead of
> > wall-time perhaps? I can't quite remember, but vague memories are
> > telling me most of the PSI accounting was about blocked tasks, not
> > running tasks, which makes all this rather more complicated.
> >
> > Randomly scaling time as proposed seems almost certainly wrong. What
> > would that make the stats mean?
>
> It *could* be argued that IRQs and RT preemptions are CPU stalls.
>
> I'm less convinced we should subtract preemptions from memory stalls.
>
> Yes, when you're reclaiming and you get preempted for whatever reason,
> you're technically stalled on CPU in this moment. However, reclaim
> itself consumes CPU and walltime, and it could be what is causing
> those preemptions to begin with! For example, reclaim could eat up 90%
> of your scheduling timeslice and then cause a preemption when the
> thread is back in userspace and trying to be productive. By consuming
> time, it also drags out the overall timeline for userspace to finish
> its work, and a longer timeline will have more disruptions from
> independent events like IRQs and RT thread wakeups.
Reclaim could be running at RT priority. There is fundamentally no
distinction between CFS and RT tasks. Consider priority inheritance on
kernel mutexes, or an admin thinking it makes sense to chrt kswapd. Or
an RT task ends up direct reclaim or...
Either they all count or they don't. There is no sane middle ground
here.
next prev parent reply other threads:[~2021-11-12 19:23 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-15 6:16 Huangzhaoyang
2021-11-02 19:47 ` Johannes Weiner
2021-11-03 7:07 ` Zhaoyang Huang
2021-11-03 7:08 ` Zhaoyang Huang
2021-11-04 8:58 ` Dietmar Eggemann
2021-11-05 5:58 ` Zhaoyang Huang
2021-11-05 16:42 ` Dietmar Eggemann
2021-11-08 8:49 ` Xuewen Yan
2021-11-08 9:20 ` Zhaoyang Huang
2021-11-09 12:29 ` Dietmar Eggemann
2021-11-10 5:38 ` Xuewen Yan
2021-11-09 9:43 ` Dietmar Eggemann
2021-11-10 5:36 ` Xuewen Yan
2021-11-12 14:16 ` Dietmar Eggemann
2021-11-09 14:56 ` Peter Zijlstra
2021-11-10 1:37 ` Zhaoyang Huang
2021-11-10 8:36 ` Peter Zijlstra
2021-11-10 8:47 ` Zhaoyang Huang
2021-11-10 8:49 ` Vincent Guittot
2021-11-10 9:04 ` Zhaoyang Huang
2021-11-12 16:36 ` Johannes Weiner
2021-11-12 19:23 ` Peter Zijlstra [this message]
2021-11-15 2:24 ` Zhaoyang Huang
-- strict thread matches above, loose matches on Subject: below --
2021-09-26 3:27 Huangzhaoyang
2021-09-18 5:25 Huangzhaoyang
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=20211112192329.GL174703@worktop.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=hannes@cmpxchg.org \
--cc=huangzhaoyang@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@kernel.org \
--cc=vdavydov.dev@gmail.com \
--cc=zhaoyang.huang@unisoc.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