mbox series

[v2,0/2] Integrating qemu to Linux Perf

Message ID 20190830121903.17585-1-vandersonmr2@gmail.com
Headers show
Series Integrating qemu to Linux Perf | expand

Message

vandersonmr Aug. 30, 2019, 12:19 p.m. UTC
This patch is part of Google Summer of Code (GSoC) 2019.
More about the project can be found in:
https://wiki.qemu.org/Internships/ProjectIdeas/TCGCodeQuality

This adds --perf command-line option to dump Linux Perf
jitdump files. These files are used to enhant Perf report
and to be able to analyze and dump JITed code with perf.

Example of use:
 perf record -k 1 qemu-x86_64 -perf ./a.out
 perf inject -j -i perf.data -o perf.data.jitted
 perf report -i perf.data.jitted

vandersonmr (2):
  accel/tcg: adding integration with linux perf
  tb-stats: adding TBStatistics info into perf dump

 accel/tcg/Makefile.objs      |   1 +
 accel/tcg/perf/Makefile.objs |   1 +
 accel/tcg/perf/jitdump.c     | 206 +++++++++++++++++++++++++++++++++++
 accel/tcg/perf/jitdump.h     |  36 ++++++
 accel/tcg/translate-all.c    |  14 +++
 include/qemu-common.h        |   3 +
 linux-user/main.c            |   7 ++
 os-posix.c                   |   3 +
 qemu-options.hx              |  11 ++
 9 files changed, 282 insertions(+)
 create mode 100644 accel/tcg/perf/Makefile.objs
 create mode 100644 accel/tcg/perf/jitdump.c
 create mode 100644 accel/tcg/perf/jitdump.h

Comments

Stefan Hajnoczi Sept. 2, 2019, 9:41 a.m. UTC | #1
On Fri, Aug 30, 2019 at 09:19:01AM -0300, vandersonmr wrote:
> This patch is part of Google Summer of Code (GSoC) 2019.
> More about the project can be found in:
> https://wiki.qemu.org/Internships/ProjectIdeas/TCGCodeQuality
> 
> This adds --perf command-line option to dump Linux Perf
> jitdump files. These files are used to enhant Perf report
> and to be able to analyze and dump JITed code with perf.
> 
> Example of use:
>  perf record -k 1 qemu-x86_64 -perf ./a.out
>  perf inject -j -i perf.data -o perf.data.jitted
>  perf report -i perf.data.jitted

Please include a changelog in the future so reviewers know what to look
out for in this new revision.  For example:

v2:
 * Fix foo in bar() [Bob]

(where Bob is the reviewer who requested the change)

> vandersonmr (2):
>   accel/tcg: adding integration with linux perf
>   tb-stats: adding TBStatistics info into perf dump
> 
>  accel/tcg/Makefile.objs      |   1 +
>  accel/tcg/perf/Makefile.objs |   1 +
>  accel/tcg/perf/jitdump.c     | 206 +++++++++++++++++++++++++++++++++++
>  accel/tcg/perf/jitdump.h     |  36 ++++++
>  accel/tcg/translate-all.c    |  14 +++
>  include/qemu-common.h        |   3 +
>  linux-user/main.c            |   7 ++
>  os-posix.c                   |   3 +
>  qemu-options.hx              |  11 ++
>  9 files changed, 282 insertions(+)
>  create mode 100644 accel/tcg/perf/Makefile.objs
>  create mode 100644 accel/tcg/perf/jitdump.c
>  create mode 100644 accel/tcg/perf/jitdump.h
> 
> -- 
> 2.22.0
> 
>