[PATCH v10 2/4] cpufreq: Introduce an optional cpuinfo_avg_freq sysfs entry
Catalin Marinas
catalin.marinas at arm.com
Mon Feb 17 06:57:53 PST 2025
On Mon, Feb 17, 2025 at 12:52:44PM +0100, Rafael J. Wysocki wrote:
> On Fri, Jan 31, 2025 at 5:25 PM Beata Michalska <beata.michalska at arm.com> wrote:
> >
> > Currently the CPUFreq core exposes two sysfs attributes that can be used
> > to query current frequency of a given CPU(s): namely cpuinfo_cur_freq
> > and scaling_cur_freq. Both provide slightly different view on the
> > subject and they do come with their own drawbacks.
> >
> > cpuinfo_cur_freq provides higher precision though at a cost of being
> > rather expensive. Moreover, the information retrieved via this attribute
> > is somewhat short lived as frequency can change at any point of time
> > making it difficult to reason from.
> >
> > scaling_cur_freq, on the other hand, tends to be less accurate but then
> > the actual level of precision (and source of information) varies between
> > architectures making it a bit ambiguous.
> >
> > The new attribute, cpuinfo_avg_freq, is intended to provide more stable,
> > distinct interface, exposing an average frequency of a given CPU(s), as
> > reported by the hardware, over a time frame spanning no more than a few
> > milliseconds. As it requires appropriate hardware support, this
> > interface is optional.
> >
> > Note that under the hood, the new attribute relies on the information
> > provided by arch_freq_get_on_cpu, which, up to this point, has been
> > feeding data for scaling_cur_freq attribute, being the source of
> > ambiguity when it comes to interpretation. This has been amended by
> > restoring the intended behavior for scaling_cur_freq, with a new
> > dedicated config option to maintain status quo for those, who may need
> > it.
>
> In case anyone is waiting for my input here
>
> Acked-by: Rafael J. Wysocki <rafael at kernel.org>
>
> for this and the previous patch and please feel free to route them
> both through ARM64.
Thanks Rafael. I indeed plan to take them through the arm64 tree.
--
Catalin
More information about the linux-arm-kernel
mailing list