1. 01 3月, 2017 2 次提交
  2. 26 2月, 2017 6 次提交
  3. 25 12月, 2016 2 次提交
    • L
      tools/power turbostat: remove obsolete -M, -m, -C, -c options · 6886fee4
      Len Brown 提交于
      The new --add option has replaced the -M, -m, -C, -c options
      Eg.
      
      -M 0x10 is now --add msr0x10,raw
      -m 0x10 is now --add msr0x10,raw,u32
      -C 0x10 is now --add msr0x10,delta
      -c 0x10 is now --add msr0x10,delta,u32
      
      The --add option can be repeated to add any number of counters,
      while the previous options were limited to adding one of each type.
      
      In addition, the --add option can accept a column label,
      and can also display a counter as a percentage of elapsed cycles.
      
      Eg. --add msr0x3fe,core,percent,MY_CC3
      Signed-off-by: NLen Brown <len.brown@intel.com>
      6886fee4
    • L
      tools/power turbostat: Make extensible via the --add parameter · 388e9c81
      Len Brown 提交于
      Create the "--add" parameter.  This can be used to teach an existing
      turbostat binary about any number of any type of counter.
      
      turbostat(8) details the syntax for --add.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      388e9c81
  4. 02 12月, 2016 3 次提交
  5. 01 12月, 2016 12 次提交
  6. 07 7月, 2016 1 次提交
  7. 08 4月, 2016 7 次提交
  8. 13 3月, 2016 7 次提交
    • C
      tools/power turbostat: bugfix: TDP MSRs print bits fixing · 685b535b
      Chen Yu 提交于
      MSR_CONFIG_TDP_NOMINAL:
      should print all 8 bits of base_ratio (bit 0:7) 0xFF
      
      MSR_CONFIG_TDP_LEVEL_1:
      should print all 15 bits of PKG_MIN_PWR_LVL1 (bit 48:62) 0x7FFF
      should print all 15 bits of PKG_MAX_PWR_LVL1 (bit 32:46) 0x7FFF
      should print all 8 bits of LVL1_RATIO (bit 16:23) 0xFF
      should print all 15 bits of PKG_TDP_LVL1 (bit 0:14) 0x7FFF
      
      And the same modification to MSR_CONFIG_TDP_LEVEL_2.
      
      MSR_TURBO_ACTIVATION_RATIO:
      should print all 8 bits of MAX_NON_TURBO_RATIO (bit 0:7) 0xFF
      Signed-off-by: NChen Yu <yu.c.chen@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      685b535b
    • L
      tools/power turbostat: correct output for MSR_NHM_SNB_PKG_CST_CFG_CTL dump · 6c34f160
      Len Brown 提交于
      MSR_NHM_SNB_PKG_CST_CFG_CTL: 0x1e008008 (...pkg-cstate-limit=0: unlimited)
      should print as
      MSR_NHM_SNB_PKG_CST_CFG_CTL: 0x1e008008 (...pkg-cstate-limit=8: unlimited)
      Signed-off-by: NLen Brown <len.brown@intel.com>
      6c34f160
    • L
      tools/power turbostat: call __cpuid() instead of __get_cpuid() · 5aea2f7f
      Len Brown 提交于
      turbostat already checks whether calling each cpuid leavf is legal,
      and it doesn't look at the function return value,
      so call the simpler gcc intrinsic __cpuid() instead of __get_cpuid().
      
      syntax only, no functional change
      Signed-off-by: NLen Brown <len.brown@intel.com>
      5aea2f7f
    • L
      tools/power turbostat: indicate SMX and SGX support · aa8d8cc7
      Len Brown 提交于
      SGX presence is related to a SKL power workaround,
      so lets show when that is enabled.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      aa8d8cc7
    • L
      tools/power turbostat: detect and work around syscall jitter · 0102b067
      Len Brown 提交于
      The accuracy of Bzy_Mhz and Busy% depend on reading
      the TSC, APERF, and MPERF close together in time.
      
      When there is a very short measurement interval,
      or a large system is profoundly idle, the changes
      in APERF and MPERF may be very small.
      They can be small enough that an expensive interrupt
      between reading APERF and MPERF can cause the APERF/MPERF
      ratio to become inaccurate, resulting in invalid
      calculation and display of Bzy_MHz.
      
      A dummy APERF read of APERF makes this problem
      much more rare.  Apparently this 1st systemn call
      after exiting a long stretch of idle is when we
      typically see expensive timer interrupts that cause
      large jitter.
      
      For the cases that dummy APERF read fails to prevent,
      we compare the latency of the APERF and MPERF reads.
      If they differ by more than 2x, we re-issue them.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      0102b067
    • L
      tools/power turbostat: show GFX%rc6 · fdf676e5
      Len Brown 提交于
      The column "GFX%c6" show the percentage of time the GPU
      is in the "render C6" state, rc6.  Deep package C-states on several
      systems depend on the GPU being in RC6.
      
      This information comes from the counter
      /sys/class/drm/card0/power/rc6_residency_ms,
      as read before and after the measurement interval.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      fdf676e5
    • L
      tools/power turbostat: show GFXMHz · 27d47356
      Len Brown 提交于
      Under the column "GFXMHz", show a snapshot of this attribute:
      /sys/class/graphics/fb0/device/drm/card0/gt_cur_freq_mhz
      
      This is an instantaneous snapshot of what sysfs presents
      at the end of the measurement interval.  turbostat does
      not average or otherwise perform any math on this value.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      27d47356