Re: [EXTERNAL] Re: [PATCH v4] perf inject --jit: Remove //anon mmap events

2020-05-31 Thread Nick Gasson
On 05/28/20 17:32 PM, Ian Rogers wrote: > > So on tip/perf/core with: > 1c0cd2dbb993 perf jvmti: Fix jitdump for methods without debug info > 3ce17c1e52f4 perf jvmti: remove redundant jitdump line table entries > > I've been trying variants of: > > Before: > /tmp/perf/perf record -k 1 -e cycles:u -

Re: [EXTERNAL] Re: [PATCH v4] perf inject --jit: Remove //anon mmap events

2020-06-01 Thread Nick Gasson
On 06/01/20 16:53 PM, Ian Rogers wrote: > On Sun, May 31, 2020 at 11:17 PM Nick Gasson wrote: >> >> On 05/28/20 17:32 PM, Ian Rogers wrote: >> > >> > So on tip/perf/core with: >> > 1c0cd2dbb993 perf jvmti: Fix jitdump for methods without debug info >

Re: [PATCH] perf jvmti: remove redundant jitdump line table entries

2020-05-26 Thread Nick Gasson
On 05/26/20 19:55 PM, Jiri Olsa wrote: > On Fri, May 22, 2020 at 02:53:30PM +0800, Nick Gasson wrote: >> For each PC/BCI pair in the JVMTI compiler inlining record table, the >> jitdump plugin emits debug line table entries for every source line in >> the method preceding t

Re: [PATCH] perf jvmti: remove redundant jitdump line table entries

2020-05-26 Thread Nick Gasson
On 05/27/20 13:03 PM, Ian Rogers wrote: > > Great result, thanks! I note there is a lack of symbolization when > benchmarking a few Java applications. I'll try to see if there's a > sensible resolution for those. > I noticed it loses information when the Hotspot code cache is resized. I've been wo

Re: [PATCH] perf jvmti: remove redundant jitdump line table entries

2020-05-27 Thread Nick Gasson
On 05/28/20 02:08 AM, Ian Rogers wrote: >> >> I noticed it loses information when the Hotspot code cache is >> resized. I've been working around that by setting >> -XX:InitialCodeCacheSize and -XX:ReservedCodeCacheSize to large >> values. Does this help in your case? > > Thanks, I tried and also wi

[PATCH] perf jit: Fix inaccurate DWARF line table

2020-05-27 Thread Nick Gasson
Fix an issue where addresses in the DWARF line table are offset by -0x40 (GEN_ELF_TEXT_OFFSET). This can be seen with `objdump -S` on the ELF files after perf inject. Signed-off-by: Nick Gasson --- tools/perf/util/genelf_debug.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff

[PATCH v2] perf jvmti: Remove redundant jitdump line table entries

2020-05-27 Thread Nick Gasson
to ~40MB. Signed-off-by: Nick Gasson --- Changes in v2: - Split the unrelated DWARF debug fix into a separate patch - Added a comment about the use of c->methods tools/perf/jvmti/libjvmti.c | 78 - 1 file changed, 33 insertions(+), 45 deletions(-) diff --

Re: [PATCH 3/3] perf jvmti: Fix demangling Java symbols

2020-05-27 Thread Nick Gasson
On 05/28/20 06:34 AM, Arnaldo Carvalho de Melo wrote: >> >> This is in my tmp.perf/core branch pending a round of testing, after >> that it'll move to perf/core on its way to 5.8, thanks. > > All tests passed, moved to perf/core. > Great, thank you! -- Nick

Re: [PATCH 0/3] perf jvmti: Various fixes to JVMTI agent

2020-05-14 Thread Nick Gasson
On 04/27/20 18:35 pm, Jiri Olsa wrote: > > adding Stephane to the loop > > jirka > >> >> These three patches fix a couple of issues I ran into while using the >> jitdump JVMTI agent to profile the SPECjbb benchmark. >> Hi, any feedback on these patches?

[PATCH] perf jvmti: remove redundant jitdump line table entries

2020-05-21 Thread Nick Gasson
to ~40MB. Also fix an error in the DWARF line table state machine where addresses are incorrectly offset by -0x40 (GEN_ELF_TEXT_OFFSET). This can be seen with `objdump -S` on the ELF files after perf inject. Signed-off-by: Nick Gasson --- tools/perf/jvmti/libjvmti.c| 73

Re: [PATCH 0/3] perf jvmti: Various fixes to JVMTI agent

2020-05-15 Thread Nick Gasson
On 05/15/20 06:41 am, Ian Rogers wrote: > > If you are looking at this code I believe there is a bug in that the > loop handling jvmtiCompiledMethodLoadInlineRecord is writing out the > entire line number table before a pc and not just the line number > table at the pc. This loop in do_get_line_num