[procps] Re: C-States handling - new switch?

  • From: Jaromir Capik <jcapik@xxxxxxxxxx>
  • To: procps@xxxxxxxxxxxxx
  • Date: Thu, 09 Feb 2012 09:34:16 -0500 (EST)

> Now try me once again on the problem as you see it.  Exactly what
> kind of switch are you envisioning and what would be its effect?

I started to fall in heavy depression after Your previous answer.
Really. I don't want to fight with anyone. 
And I also don't want to make people think, that I'm the
well known troublemaker, who needs to argue about everything
until everyone is absolutely pissed off.

I just imagined myself to maintain local patches for the mentioned 
feature forever (what goes contrary to our intentions) and that
made me a bit stressed.

Previously I wanted to introduce a new switch for considering
the 0+0=0 state as 100% idle. But that seems to be solved by 
the recent changes You've done and thus not relevant anymore.
But in the meantime I had a talk with our support engineer
who told me about the custom monitoring platform and explained
how it works. In that moment I knew it simply can't work like
that without introduction of a new switch in the top utility.

This new switch should change the scaling algorithm to always use
the absolute maximum of total ticks measured when the CPU 
is online and it's frequency is set to the maximum supported value.
That would always give us stats related to the real HW limits
without being affected by the frequency scaling.
But that also means such value would need to be stored somewhere
and it would need an initial calibration unless we find a better
way how to reliably detect such maximum. The calibration would
be requested only when the new switch is used.
Currently we stretch the load using the total ticks measured with
each sample and this value is dependent on the CPU freqency and
possible off states.
As I'm not a native speaker I'm unsure if the explanation is clear
enough.

> 
> Don't worry about implementation details just stick to the user
> interface.

This would need either
2 switches (one for the feature activation, second for the recalibration)
-or-
1 switch (for the feature activation) and a new binary (for the calibration).

Jaromir.


Other related posts: