On 10/11/2019 2:37 PM, Natarajan, Janakarajan wrote:
> This patchset updates cpupower to make it more accurate by removing
> the userspace to kernel transitions and read_msr initiated IPI delays.
>
> The first patch does a little re-arrangement of variables in the
> cpuidle_monitor struct to prepare for a new flag.
>
> The second patch introduces a per_cpu_schedule flag which, when set,
> will allow cpupower to move to each of the cpus in the system. The
> advantage of this is that the IPI latency is removed when reading
> the APERF/MPERF registers, since an IPI is not generated for rdmsrs
> when the source and destination cpus are the same for the IPI.
>
> The third patch introduces the RDPRU instruction, which will allow
> cpupower to not use the msr module for APERF/MPERF register reads.
> This will remove the userspace to kernel transition delays when
> reading the APERF/MPERF registers.


Any concerns regarding this patchset?


-Janak


>
> v1->v2:
> * Added cover letter.
> * Used bind_cpu instead of rewriting the same code.
> * Moved needs_root to flag sub-struct.
> * Introduced per_cpu_schedule flag.
>
> Janakarajan Natarajan (3):
>    cpupower: Move needs_root variable into a sub-struct
>    cpupower: mperf_monitor: Introduce per_cpu_schedule flag
>    cpupower: mperf_monitor: Update cpupower to use the RDPRU instruction
>
>   tools/power/cpupower/utils/helpers/cpuid.c    |  4 ++
>   tools/power/cpupower/utils/helpers/helpers.h  |  1 +
>   .../utils/idle_monitor/amd_fam14h_idle.c      |  2 +-
>   .../utils/idle_monitor/cpuidle_sysfs.c        |  2 +-
>   .../utils/idle_monitor/cpupower-monitor.c     |  2 +-
>   .../utils/idle_monitor/cpupower-monitor.h     |  5 +-
>   .../utils/idle_monitor/hsw_ext_idle.c         |  2 +-
>   .../utils/idle_monitor/mperf_monitor.c        | 64 +++++++++++++++----
>   .../cpupower/utils/idle_monitor/nhm_idle.c    |  2 +-
>   .../cpupower/utils/idle_monitor/snb_idle.c    |  2 +-
>   10 files changed, 68 insertions(+), 18 deletions(-)
>

Reply via email to