Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1681979
| From | "Jin, Yao" <yao.jin@linux.intel.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v3 0/2] perf report: Implement visual marker for macro fusion in annotate |
| Date | 2017-07-06 02:50 +0200 |
| Message-ID | <u039v-5kK-5@gated-at.bofh.it> (permalink) |
| References | <tUqit-8w4-11@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Arnaldo, Is this series OK? Thanks Jin Yao On 6/20/2017 8:22 PM, Jin Yao wrote: > Macro fusion merges two instructions to a single micro-op. Intel > core platform performs this hardware optimization under limited > circumstances. For example, CMP + JCC can be "fused" and executed > /retired together. While with sampling this can result in the > sample sometimes being on the JCC and sometimes on the CMP. > So for the fused instruction pair, they could be considered > together. > > On Nehalem, fused instruction pairs: > cmp/test + jcc. > > On other new CPU: > cmp/test/add/sub/and/inc/dec + jcc. > > This patch series marks the case clearly by joining the fused > instruction pair in the arrow of the jump. > > For example: > > │ ┌──cmpl $0x0,argp_program_version_hook > 81.93 │ ├──je 20 > │ │ lock cmpxchg %esi,0x38a9a4(%rip) > │ │↓ jne 29 > │ │↓ jmp 43 > 11.47 │20:└─→cmpxch %esi,0x38a999(%rip) > > Change-log: > ----------- > v3: 1. Add checking for Nehalem (CMP, TEST). For other newer > Intel CPUs just check it by default (CMP, TEST, ADD, > SUB, AND, INC, DEC). > > 2. Use Arnaldo's fix to let the display be better > > v2: According to Arnaldo's comments, remove the weak function and > use an arch-specific function instead to check fused instruction > pair. > > v1: Inital post > > Jin Yao (2): > perf util: Check for fused instruction > perf report: Implement visual marker for macro fusion in annotate > > tools/perf/arch/x86/annotate/instructions.c | 37 +++++++++++++++++++++++++++++ > tools/perf/ui/browser.c | 29 ++++++++++++++++++++++ > tools/perf/ui/browser.h | 2 ++ > tools/perf/ui/browsers/annotate.c | 32 +++++++++++++++++++++++++ > tools/perf/util/annotate.c | 17 +++++++++++++ > tools/perf/util/annotate.h | 3 +++ > 6 files changed, 120 insertions(+) >
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
Re: [PATCH v3 0/2] perf report: Implement visual marker for macro fusion in annotate "Jin, Yao" <yao.jin@linux.intel.com> - 2017-07-06 02:50 +0200
csiph-web