public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: "Prakash, Prashanth" <pprakash@codeaurora.org>
To: Sudeep Holla <sudeep.holla@arm.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>
Cc: Timur Tabi <timur@codeaurora.org>,
	ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	Len Brown <lenb@kernel.org>
Subject: Re: [PATCH v3] ACPI / Processor: add sysfs support for low power idle
Date: Thu, 16 Nov 2017 10:50:51 -0700	[thread overview]
Message-ID: <c45d5fc9-e613-bafd-cc06-60ccccd03019@codeaurora.org> (raw)
In-Reply-To: <7bfe82ba-0063-0b58-de06-ac534eef36e9@arm.com>

Hey Sudeep,

On 11/16/2017 7:52 AM, Sudeep Holla wrote:
>
> On 15/11/17 18:37, Rafael J. Wysocki wrote:
>> On Wed, Nov 15, 2017 at 7:14 PM, Sudeep Holla <sudeep.holla@arm.com> wrote:
>>>
>>> On 15/11/17 15:33, Timur Tabi wrote:
>>>> On Wed, Nov 8, 2017 at 8:18 AM, Sudeep Holla <sudeep.holla@arm.com> wrote:
>>>>> I still prefer this as debugfs and not as sysfs ABI. We already have
>>>>> issues with multiple interfaces for the same thing. E.g. cpufreq on x86.
>>>>> I don't want this to end up in the same way after few years. CPUIdle
>>>>> sysfs should be only sysfs ABI for these, adding an alternative is
>>>>> inviting troubles for future especially if some user-space starts using
>>>>> it and we will be stuck with that. Moreover with more h/w controlled
>>>>> idle we may not provide accurate data sooner.
>>>>>
>>>>> Sorry for the noise, I will shup up now ;). Since this may be last
>>>>> chance to make some noise, I am trying it. I completely understand that
>>>>> this is just my opinion and am fine if others thinks it's good to make
>>>>> this sysfs ABI.
>>>> Unfortunately, I think Prashanth really needs a specific requirement
>>>> rather than opinions.
>>> I completely understand that. So for I haven't got a solid reason as
>>> why debugfs is not sufficient? If it becomes so popular in future, we
>>> can discuss and then make it sysfs ABI with more thoughts/discussions.
>> Well, the recent discussions regarding tracepoints indicate that the
>> ABI rule is not really about where the stuff is located in the
>> directory structure. :-)
>>
> Agreed.
>
>> The main question to me is whether or not the information exposed is
>> more suitable for debugfs or for sysfs, considering all of the
>> limitations (like one value per file rule in sysfs etc).
>>
> I was thinking of keeping it simple and just one file for all the stats
> like we have /sys/kernel/debug/clk/clk_summary
>
> It looks somethings like below:
>    clock       enable_cnt  prepare_cnt    rate   accuracy   phase
> ----------------------------------------------------------------------
>  juno:uartclk         1            2     7273800       0      0
> ...
>
>
>> Of course, debugfs means that the users of, say, Android will not be
>> able to access this information, but should that really influence
>> decisions at the technical level?
>>
> That's the idea. IIUC, this is basically useful in the initial days of
> development to tune your idle parameters and for idle characterization.
> I am not sure(and hope) that this will be consumed by some application
> and acted upon dynamically. It's more like collect data, analyze, tune,
> repeat and rinse until happy with the tuning.
>
> Prashanth/Timur, please correct me if that's not the case. Understanding
> how the data is used is essential here.

One of the use case is definitely initial idle characterization. With the whole
hierarchy it does open up some additional use cases even after the initial
characterization depending on how high/deep the hierarchy is.

It is sometimes interesting to see how higher level idle states are getting utilized
for different workloads and tweaking some thread-placement may help make
a workload run more efficiently w.r.t power. Similarly how autopromotable states
are used with different workloads.

For the above use cases, the hierarchical view is very important, so we need a
way to represent the dependency b/w CPU, cluster and any other higher levels.
That's why the existing ACPI sysfs hierarchy was so nice. I haven't though about a
lot about how to represent  the above on a single debugfs file yet.

--
Thanks,
Prashanth

  reply	other threads:[~2017-11-16 17:50 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-19 18:19 [PATCH v3] ACPI / Processor: add sysfs support for low power idle Prashanth Prakash
2017-11-06 21:49 ` Prakash, Prashanth
2017-11-08 14:18 ` Sudeep Holla
2017-11-15 15:33   ` Timur Tabi
2017-11-15 17:22     ` Rafael J. Wysocki
2017-11-15 17:24       ` Rafael J. Wysocki
2017-11-15 18:14     ` Sudeep Holla
2017-11-15 18:37       ` Rafael J. Wysocki
2017-11-15 20:21         ` Prakash, Prashanth
2017-11-16 14:52         ` Sudeep Holla
2017-11-16 17:50           ` Prakash, Prashanth [this message]
2017-11-16 23:34             ` 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=c45d5fc9-e613-bafd-cc06-60ccccd03019@codeaurora.org \
    --to=pprakash@codeaurora.org \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=rafael@kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=sudeep.holla@arm.com \
    --cc=timur@codeaurora.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