1. 27 Jul, 2018 2 commits
  2. 26 Jul, 2018 3 commits
    • Prarit Bhargava's avatar
      tools/power turbostat: Fix logical node enumeration to allow for non-sequential physical nodes · 2ffbb224
      Prarit Bhargava authored
      turbostat fails on some multi-package topologies because the logical node
      enumeration assumes that the nodes are sequentially numbered,
      which causes the logical numa nodes to not be enumerated, or enumerated incorrectly.
      
      Use a more robust enumeration algorithm which allows for non-seqential physical nodes.
      Signed-off-by: default avatarPrarit Bhargava <prarit@redhat.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      2ffbb224
    • Len Brown's avatar
      tools/power turbostat: fix x2apic debug message output file · cfce494d
      Len Brown authored
      A recently added x2apic debug message was hard-coded to stderr.
      That doesn't work with "-o outfile".
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      cfce494d
    • Artem Bityutskiy's avatar
      tools/power turbostat: fix bogus summary values · 4f206a0f
      Artem Bityutskiy authored
      This patch fixes a regression introduced in
      
      commit 8cb48b32 ("tools/power turbostat: track thread ID in cpu_topology")
      
      Turbostat uses incorrect cores number ('topo.num_cores') - its value is count
      of logical CPUs, instead of count of physical cores. So it is twice as large as
      it should be on a typical Intel system. For example, on a 6 core Xeon system
      'topo.num_cores' is 12, and on a 52 core Xeon system 'topo.num_cores' is 104.
      
      And interestingly, on a 68-core Knights Landing Intel system 'topo.num_cores'
      is 272, because this system has 4 logical CPUs per core.
      
      As a result, some of the turbostat calculations are incorrect. For example,
      on idle 52-core Xeon system when all cores are ~99% in Core C6 (CPU%c6), the
      summary (very first) line shows ~48% Core C6, while it should be ~99%.
      
      This patch fixes the problem by fixing 'topo.num_cores' calculation.
      
      Was:
      
      1. Init 'thread_id' for all CPUs to -1
      2. Run 'get_thread_siblings()' which sets it to 0 or 1
      3. Increment 'topo.num_cores' when thread_id != -1 (bug!)
      
      Now:
      
      1. Init 'thread_id' for all CPUs to -1
      2. Run 'get_thread_siblings()' which sets it to 0 or 1
      3. Increment 'topo.num_cores' when thread_id is not 0
      
      I did not have a chance to test this on an AMD machine, and only tested on a
      couple of Intel Xeons (6 and 52 cores).
      Reported-by: default avatarVladislav Govtva <vladislav.govtva@intel.com>
      Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      4f206a0f
  3. 20 Jul, 2018 1 commit
  4. 18 Jul, 2018 1 commit
  5. 20 Jun, 2018 8 commits
  6. 02 Jun, 2018 17 commits
  7. 01 Jun, 2018 8 commits