perf scripting python: Add IPC
authorAdrian Hunter <adrian.hunter@intel.com>
Tue, 25 May 2021 09:51:08 +0000 (12:51 +0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 25 May 2021 13:07:17 +0000 (10:07 -0300)
Add IPC to python scripting.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: https://lore.kernel.org/r/20210525095112.1399-7-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/scripting-engines/trace-event-python.c

index 5d01e4f..fccd1b4 100644 (file)
@@ -831,6 +831,14 @@ static PyObject *get_perf_sample_dict(struct perf_sample *sample,
        if (sample->flags)
                python_process_sample_flags(sample, dict_sample);
 
+       /* Instructions per cycle (IPC) */
+       if (sample->insn_cnt && sample->cyc_cnt) {
+               pydict_set_item_string_decref(dict_sample, "insn_cnt",
+                       PyLong_FromUnsignedLongLong(sample->insn_cnt));
+               pydict_set_item_string_decref(dict_sample, "cyc_cnt",
+                       PyLong_FromUnsignedLongLong(sample->cyc_cnt));
+       }
+
        set_regs_in_dict(dict, sample, evsel);
 
        return dict;