(In reply to Giovanni Gherdovich from comment #10) > Hello, > > before getting into the detail of this report I need to clarify the > difference > between two kinds of frequency measurements: average frequency over active > time (also called "BusyMHz") and average frequency over entire time (or > "AvgMHz"). > > * BusyMHz: a CPU can be active, i.e. executing instructions (this is called > "CO State") or switched off, inactive. There are several inctive states, > called C1, C2, C3 etc. depending on how big of a portion of a CPU is taken > offline. A CPU enters an inactive state to save energy; when in such state, > it isn't executing anything and we can say the clock frequency is zero. > BusyMHz is the average clock frequency (during the sampled interval) if we > only consider C0 time, and dismiss all the time that's spent in all other > C-States. You can be idling a lot (lots of non-C0 time) and still have a > high BusyMHz, simply because of some brief activity spike (eg. processing > interrupts). When the machine is not under load what's important is that > AvgMHz is low, see next item. > > * AvgMHz: if we include all the non-C0 time (during which the CPU was powered > off to some extent) in our average frequency calculation, we get AvgMHz. > When not under load, this is expected to be near zero. > > Your measurement before and after the change were done using lscpu; there are > two problems with that: > > 1. lscpu measures BusyMHz; the sampling time is very brief (less than 10 ms). > This is not a good indication of "cpu is spinning fast even if I not doing > anything". Again, BusyMHz can be high even if the machine is not under > load. > > 2. lscpu only shows BusyMHz for the first cpu, CPU#0. It seems like this is > an > Intel CPU and I expect it to have multiple cores; the reason for the > change > in lscpu output could simply be something that used to be processed > elsewhere is now processed on CPU#0. Without data on the full set of CPUs, > we can't tell. > > Regarding how to measure the CPU frequency, the designated tool is > turbostat(8), which in openSUSE is packaged in the cpupower package. > > Please run (as root) the following: > > turbostat --interval 1 > > This will sample all the data that's needed at intervals of 1 second, > especially AvgMHz and BusyMHz from above, and Busy% which will tell the > percentage of C0 time with respect to the total. > > What we want for an idle system is low values of AvgMHz and Busy%. > Please let turbostat run for a minute or so, save the entire output and post > as an attachment (including the header information, which shows a number of > power-management related indicators). > > Also please show the entire `lscpu` output for information on the CPU model. > > Thanks, Thank you for such a wonderful post. I love learning more about Linux and this certainly helped. I provided everything you asked for. I just wanted to mention that I really, really appreciate your help with this and your willingness to explain these items to me. Thank you for your help with this.