diff options
author | Prarit Bhargava <prarit@redhat.com> | 2018-06-01 16:04:32 +0200 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2018-06-02 05:12:46 +0200 |
commit | 139dd0e07c1c116949aed75c2c067873c6f91e50 (patch) | |
tree | ab438458963579062f228888eac94a222592eee6 /tools/power/x86 | |
parent | tools/power turbostat: track thread ID in cpu_topology (diff) | |
download | linux-139dd0e07c1c116949aed75c2c067873c6f91e50.tar.xz linux-139dd0e07c1c116949aed75c2c067873c6f91e50.zip |
tools/power turbostat: rename num_cores_per_pkg to num_cores_per_node
turbostat incorrectly assumes that there is one node per package. As a
result num_cores_per_pkg is not correctly named and is actually
num_cores_per_node.
Rename num_cores_per_pkg to num_cores_per_node.
Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'tools/power/x86')
-rw-r--r-- | tools/power/x86/turbostat/turbostat.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c index 2ac9119dee96..154c55530671 100644 --- a/tools/power/x86/turbostat/turbostat.c +++ b/tools/power/x86/turbostat/turbostat.c @@ -217,11 +217,11 @@ struct pkg_data { #define EVEN_COUNTERS thread_even, core_even, package_even #define GET_THREAD(thread_base, thread_no, core_no, pkg_no) \ - (thread_base + (pkg_no) * topo.num_cores_per_pkg * \ + (thread_base + (pkg_no) * topo.num_cores_per_node * \ topo.num_threads_per_core + \ (core_no) * topo.num_threads_per_core + (thread_no)) #define GET_CORE(core_base, core_no, pkg_no) \ - (core_base + (pkg_no) * topo.num_cores_per_pkg + (core_no)) + (core_base + (pkg_no) * topo.num_cores_per_node + (core_no)) #define GET_PKG(pkg_base, pkg_no) (pkg_base + pkg_no) enum counter_scope {SCOPE_CPU, SCOPE_CORE, SCOPE_PACKAGE}; @@ -274,7 +274,7 @@ struct topo_params { int max_cpu_num; int max_node_num; int num_nodes_per_pkg; - int num_cores_per_pkg; + int num_cores_per_node; int num_threads_per_core; } topo; @@ -300,7 +300,8 @@ int for_all_cpus(int (func)(struct thread_data *, struct core_data *, struct pkg int retval, pkg_no, core_no, thread_no; for (pkg_no = 0; pkg_no < topo.num_packages; ++pkg_no) { - for (core_no = 0; core_no < topo.num_cores_per_pkg; ++core_no) { + for (core_no = 0; core_no < topo.num_cores_per_node; + ++core_no) { for (thread_no = 0; thread_no < topo.num_threads_per_core; ++thread_no) { struct thread_data *t; @@ -2491,7 +2492,8 @@ int for_all_cpus_2(int (func)(struct thread_data *, struct core_data *, int retval, pkg_no, core_no, thread_no; for (pkg_no = 0; pkg_no < topo.num_packages; ++pkg_no) { - for (core_no = 0; core_no < topo.num_cores_per_pkg; ++core_no) { + for (core_no = 0; core_no < topo.num_cores_per_node; + ++core_no) { for (thread_no = 0; thread_no < topo.num_threads_per_core; ++thread_no) { struct thread_data *t, *t2; @@ -4728,11 +4730,11 @@ void topology_probe() cpus[i].thread_id); } - topo.num_cores_per_pkg = max_core_id + 1; + topo.num_cores_per_node = max_core_id + 1; if (debug > 1) fprintf(outf, "max_core_id %d, sizing for %d cores per package\n", - max_core_id, topo.num_cores_per_pkg); - if (!summary_only && topo.num_cores_per_pkg > 1) + max_core_id, topo.num_cores_per_node); + if (!summary_only && topo.num_cores_per_node > 1) BIC_PRESENT(BIC_Core); topo.num_packages = max_package_id + 1; @@ -4756,21 +4758,21 @@ allocate_counters(struct thread_data **t, struct core_data **c, struct pkg_data { int i; - *t = calloc(topo.num_threads_per_core * topo.num_cores_per_pkg * + *t = calloc(topo.num_threads_per_core * topo.num_cores_per_node * topo.num_packages, sizeof(struct thread_data)); if (*t == NULL) goto error; for (i = 0; i < topo.num_threads_per_core * - topo.num_cores_per_pkg * topo.num_packages; i++) + topo.num_cores_per_node * topo.num_packages; i++) (*t)[i].cpu_id = -1; - *c = calloc(topo.num_cores_per_pkg * topo.num_packages, + *c = calloc(topo.num_cores_per_node * topo.num_packages, sizeof(struct core_data)); if (*c == NULL) goto error; - for (i = 0; i < topo.num_cores_per_pkg * topo.num_packages; i++) + for (i = 0; i < topo.num_cores_per_node * topo.num_packages; i++) (*c)[i].core_id = -1; *p = calloc(topo.num_packages, sizeof(struct pkg_data)); |