From: Jiri Olsa <jolsa@redhat.com>
To: kan.liang@linux.intel.com
Cc: acme@kernel.org, jolsa@kernel.org, mingo@redhat.com,
linux-kernel@vger.kernel.org, peterz@infradead.org,
ak@linux.intel.com
Subject: Re: [PATCH 1/3] perf header: Add die information in CPU topology
Date: Tue, 28 May 2019 10:59:54 +0200 [thread overview]
Message-ID: <20190528085954.GC27906@krava> (raw)
In-Reply-To: <1558644081-17738-1-git-send-email-kan.liang@linux.intel.com>
On Thu, May 23, 2019 at 01:41:19PM -0700, kan.liang@linux.intel.com wrote:
SNIP
>
> Add cpu_map__get_die_id() in cpumap.c to fetch die id information.
>
> Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
> ---
> tools/perf/Documentation/perf.data-file-format.txt | 9 +-
> tools/perf/util/cpumap.c | 7 ++
> tools/perf/util/cpumap.h | 1 +
> tools/perf/util/cputopo.c | 83 ++++++++++++++--
> tools/perf/util/cputopo.h | 7 +-
> tools/perf/util/env.c | 1 +
> tools/perf/util/env.h | 3 +
> tools/perf/util/header.c | 104 +++++++++++++++++++--
> 8 files changed, 193 insertions(+), 22 deletions(-)
>
> diff --git a/tools/perf/Documentation/perf.data-file-format.txt b/tools/perf/Documentation/perf.data-file-format.txt
> index 6967e9b..c731416 100644
> --- a/tools/perf/Documentation/perf.data-file-format.txt
> +++ b/tools/perf/Documentation/perf.data-file-format.txt
> @@ -153,7 +153,7 @@ struct {
>
> String lists defining the core and CPU threads topology.
> The string lists are followed by a variable length array
> -which contains core_id and socket_id of each cpu.
> +which contains core_id, die_id (for x86) and socket_id of each cpu.
> The number of entries can be determined by the size of the
> section minus the sizes of both string lists.
>
> @@ -162,14 +162,19 @@ struct {
> struct perf_header_string_list threads; /* Variable length */
> struct {
> uint32_t core_id;
> + uint32_t die_id;
> uint32_t socket_id;
> } cpus[nr]; /* Variable length records */
> };
>
> Example:
> - sibling cores : 0-3
> + sibling cores : 0-8
> + sibling dies : 0-3
> + sibling dies : 4-7
> sibling threads : 0-1
> sibling threads : 2-3
> + sibling threads : 4-5
> + sibling threads : 6-7
>
> HEADER_NUMA_TOPOLOGY = 14,
>
> diff --git a/tools/perf/util/cpumap.c b/tools/perf/util/cpumap.c
> index 0b59922..7db1365 100644
> --- a/tools/perf/util/cpumap.c
> +++ b/tools/perf/util/cpumap.c
> @@ -373,6 +373,13 @@ int cpu_map__build_map(struct cpu_map *cpus, struct cpu_map **res,
> return 0;
> }
>
> +int cpu_map__get_die_id(int cpu)
> +{
> + int value, ret = cpu__get_topology_int(cpu, "die_id", &value);
> +
> + return ret ?: value;
> +}
please put 'adding cpu_map__get_die_id function' into separate patch
thanks,
jirka
> +
> int cpu_map__get_core_id(int cpu)
> {
> int value, ret = cpu__get_topology_int(cpu, "core_id", &value);
> diff --git a/tools/perf/util/cpumap.h b/tools/perf/util/cpumap.h
> index f00ce62..6762ff9 100644
> --- a/tools/perf/util/cpumap.h
> +++ b/tools/perf/util/cpumap.h
> @@ -25,6 +25,7 @@ size_t cpu_map__snprint_mask(struct cpu_map *map, char *buf, size_t size);
> size_t cpu_map__fprintf(struct cpu_map *map, FILE *fp);
> int cpu_map__get_socket_id(int cpu);
> int cpu_map__get_socket(struct cpu_map *map, int idx, void *data);
> +int cpu_map__get_die_id(int cpu);
> int cpu_map__get_core_id(int cpu);
> int cpu_map__get_core(struct cpu_map *map, int idx, void *data);
> int cpu_map__build_socket_map(struct cpu_map *cpus, struct cpu_map **sockp);
> diff --git a/tools/perf/util/cputopo.c b/tools/perf/util/cputopo.c
SNIP
next prev parent reply other threads:[~2019-05-28 8:59 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-23 20:41 [PATCH 1/3] perf header: Add die information in CPU topology kan.liang
2019-05-23 20:41 ` [PATCH 2/3] perf stat: Support per-die aggregation kan.liang
2019-05-28 9:00 ` Jiri Olsa
2019-05-23 20:41 ` [PATCH 3/3] perf header: Rename "sibling cores" to "sibling sockets" kan.liang
2019-05-28 8:59 ` Jiri Olsa
2019-05-28 19:05 ` Liang, Kan
2019-05-28 8:59 ` [PATCH 1/3] perf header: Add die information in CPU topology Jiri Olsa
2019-05-28 8:59 ` Jiri Olsa [this message]
2019-05-28 9:00 ` Jiri Olsa
2019-05-28 19:06 ` Liang, Kan
2019-05-28 19:29 ` Jiri Olsa
2019-05-28 9:00 ` Jiri Olsa
2019-05-28 9:00 ` Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190528085954.GC27906@krava \
--to=jolsa@redhat.com \
--cc=acme@kernel.org \
--cc=ak@linux.intel.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.