From: Viresh Kumar <viresh.kumar@linaro.org>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Leo Yan <leo.yan@linaro.org>,
Brendan Jackman <brendan.jackman@arm.com>,
linaro-kernel@lists.linaro.org, linux-kernel@vger.kernel.org,
linux-pm@vger.kernel.org,
Amit Kucheria <amit.kucheria@linaro.org>
Subject: Re: [PATCH] cpufreq: dt: Set default policy->transition_delay_ns
Date: Tue, 27 Jun 2017 09:50:41 +0530 [thread overview]
Message-ID: <20170627042041.GA29665@vireshk-i7> (raw)
In-Reply-To: <1537403.PHBCuCX8Fr@aspire.rjw.lan>
On 27-06-17, 02:15, Rafael J. Wysocki wrote:
> On Monday, May 22, 2017 04:57:27 PM Viresh Kumar wrote:
> > On 22-05-17, 19:17, Leo Yan wrote:
> > > This afternoon Amit pointed me for this patch, should fix as below?
> > > Otherwise it seems directly assign the same value from unit 'ns' to
> > > 'us' but without any value conversion.
> > >
> > > diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c
> > > index 76877a6..dcc90fc 100644
> > > --- a/kernel/sched/cpufreq_schedutil.c
> > > +++ b/kernel/sched/cpufreq_schedutil.c
> > > @@ -538,7 +538,7 @@ static int sugov_init(struct cpufreq_policy *policy)
> > > unsigned int lat;
> > >
> > > tunables->rate_limit_us = LATENCY_MULTIPLIER;
> > > - lat = policy->cpuinfo.transition_latency / NSEC_PER_USEC;
I think the above line is just fine and the below one is incorrect, as
we wanted to convert transition latency to usec here (i.e. in the
units of rate_limit_us).
> > > + lat = policy->cpuinfo.transition_latency / NSEC_PER_MSEC;
> > > if (lat)
> > > tunables->rate_limit_us *= lat;
> > > }
> >
> > I will let Rafael comment in as well. NSEC_PER_USEC is used in the
> > earlier governors as well (ondemand/conservative) in exactly the same
> > way as schedutil is using.
>
> The reason why it is used by schedutil is because the other governors used it
> that way. IOW, doesn't matter. :-)
But I feel the value of LATENCY_MULTIPLIER (1000) is way too high. It currently
says that if freq-switching takes time X, then we should wait for 999X time
before we change the freq again.
Perhaps LATENCY_MULTIPLIER should be just 10 or 20 here. For a platform with
transition_latency 500 us, rate_limit_us comes to 500 ms. Which is absurd. We
ideally want it to be around 10-20 ms here. And compared to other ARM platforms,
500 us transition_latency is very low. It normally is around 1-3 ms for ARM32
platforms.
@Rafael: Will it be fine to lower down the value of LATENCY_MULTIPLIER?
--
viresh
next prev parent reply other threads:[~2017-06-27 4:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-22 5:10 [PATCH] cpufreq: dt: Set default policy->transition_delay_ns Viresh Kumar
2017-05-22 10:45 ` Brendan Jackman
2017-05-22 10:55 ` Viresh Kumar
2017-05-22 11:17 ` Leo Yan
2017-05-22 11:27 ` Viresh Kumar
2017-06-27 0:15 ` Rafael J. Wysocki
2017-06-27 4:20 ` Viresh Kumar [this message]
2017-06-27 16:08 ` Rafael J. Wysocki
2017-06-28 4:14 ` Viresh Kumar
2017-06-28 20:52 ` Rafael J. Wysocki
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=20170627042041.GA29665@vireshk-i7 \
--to=viresh.kumar@linaro.org \
--cc=amit.kucheria@linaro.org \
--cc=brendan.jackman@arm.com \
--cc=leo.yan@linaro.org \
--cc=linaro-kernel@lists.linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rjw@rjwysocki.net \
/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