Commit-ID: 41405354bd534857a02448c14df4454bf8abe432
Gitweb: https://git.kernel.org/tip/41405354bd534857a02448c14df4454bf8abe432
Author: Jin Yao
AuthorDate: Fri, 30 Nov 2018 21:54:55 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Fri, 30 Nov 2018 17:14:52 -0300
perf annotate
Commit-ID: eb58157b92bfdddc5257f9a170edd3db96e96748
Gitweb: https://git.kernel.org/tip/eb58157b92bfdddc5257f9a170edd3db96e96748
Author: Jin Yao
AuthorDate: Fri, 30 Nov 2018 21:54:57 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Fri, 30 Nov 2018 17:14:52 -0300
perf report
Commit-ID: 8eced1d1581499203caa785b9b60bdcfdab5dcce
Gitweb: https://git.kernel.org/tip/8eced1d1581499203caa785b9b60bdcfdab5dcce
Author: Jin Yao
AuthorDate: Fri, 30 Nov 2018 21:54:56 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Fri, 30 Nov 2018 17:14:52 -0300
perf report
__lll_unlock_wake_private
add$0x80,%rsp
21.56 2.908a: movslq 0xc(%rsp),%rax
2.90 add$0x18,%rsp
9.03 2.90 1 ← retq
It shows for this symbol the average IPC is 2.30 and the IPC coverage
is 54.8%.
Signed-off-by: Jin Yao
Reviewed-by: Jiri
2 flag
in struct symbol" which records if the symbol has been
annotated yet.
3. Minor update such as adding { } for multiline code in 'if'
condition.
Jin Yao (4):
perf annotate: Compute average IPC and IPC coverage per symbol
perf annotate: Create a annotate2 flag
Add explanations for new columns "IPC" and "IPC coverage" in perf
documentation.
v5:
---
Update the description according to Ingo's comments.
Signed-off-by: Jin Yao
Reviewed-by: Jiri Olsa
Reviewed-by: Ingo Molnar
---
tools/perf/Documentation/perf-report.txt | 8 ++
We often use the symbol__annotate2() to annotate a specified symbol.
While annotating may take some time, so in order to avoid annotating
the same symbol repeatedly, the patch creates a new flag to indicate
the symbol has been annotated.
Signed-off-by: Jin Yao
Reviewed-by: Jiri Olsa
---
tools
nabled when "symbol"
is specified.
v2:
---
Merge in Jiri's patch to support stdio mode
Signed-off-by: Jin Yao
Reviewed-by: Jiri Olsa
---
tools/perf/builtin-report.c | 26 ---
tools/perf/util/hist.h | 1 +
tools/perf/util/sort.c | 61
On 11/29/2018 6:13 PM, Jiri Olsa wrote:
On Thu, Nov 29, 2018 at 02:24:27PM +0800, Jin, Yao wrote:
On 11/28/2018 6:18 PM, Jiri Olsa wrote:
On Wed, Nov 28, 2018 at 11:17:57AM +0100, Jiri Olsa wrote:
On Wed, Nov 28, 2018 at 11:14:55PM +0800, Jin Yao wrote:
Add supporting of displaying the
On 11/29/2018 7:33 PM, Jiri Olsa wrote:
On Thu, Nov 29, 2018 at 11:39:34PM +0800, Jin Yao wrote:
Add supporting of displaying the average IPC and IPC coverage
percentage per function.
For example,
$ perf record -b ...
$ perf report -s symbol or
perf report -s symbol --stdio
Overhead
On 11/29/2018 9:27 PM, Ingo Molnar wrote:
* Jin Yao wrote:
Add explanations for new columns "IPC" and "IPC coverage" in perf
documentation.
Signed-off-by: Jin Yao
---
tools/perf/Documentation/perf-report.txt | 8
1 file changed, 8 insertions(+)
dif
bled when "symbol"
is specified.
v2:
---
Merge in Jiri's patch to support stdio mode
Signed-off-by: Jin Yao
---
tools/perf/builtin-report.c | 26 ---
tools/perf/util/hist.h | 1 +
tools/perf/util/sort.c | 61 +
too
We often use the symbol__annotate2() to annotate a specified symbol.
While annotating may take some time, so in order to avoid annotating
the same symbol repeatedly, the patch creates a new flag to indicate
the symbol has been annotated.
Signed-off-by: Jin Yao
---
tools/perf/util/annotate.c | 1
iri's patch to support stdio mode
2. Add a new patch "perf annotate: Create a annotate2 flag
in struct symbol" which records if the symbol has been
annotated yet.
3. Minor update such as adding { } for multiline code in 'if'
condition.
Jin Yao (4):
p
__lll_unlock_wake_private
add$0x80,%rsp
21.56 2.908a: movslq 0xc(%rsp),%rax
2.90 add$0x18,%rsp
9.03 2.90 1 ← retq
It shows for this symbol the average IPC is 2.30 and the IPC coverage
is 54.8%.
Signed-off-by: Jin Yao
---
tools/perf
Add explanations for new columns "IPC" and "IPC coverage" in perf
documentation.
Signed-off-by: Jin Yao
---
tools/perf/Documentation/perf-report.txt | 8
1 file changed, 8 insertions(+)
diff --git a/tools/perf/Documentation/perf-report.txt
b/tools/perf/Documenta
On 11/28/2018 6:18 PM, Jiri Olsa wrote:
On Wed, Nov 28, 2018 at 11:17:57AM +0100, Jiri Olsa wrote:
On Wed, Nov 28, 2018 at 11:14:55PM +0800, Jin Yao wrote:
Add supporting of displaying the average IPC and IPC coverage
percentage per function.
For example,
$ perf record -b ...
$ perf
On 11/28/2018 5:10 PM, Ingo Molnar wrote:
* Jin Yao wrote:
Add supporting of displaying the average IPC and IPC coverage
percentage per function.
For example,
$ perf record -b ...
$ perf report -s symbol or
perf report -s symbol --stdio
Overhead Symbol IPC
__lll_unlock_wake_private
add$0x80,%rsp
21.56 2.908a: movslq 0xc(%rsp),%rax
2.90 add$0x18,%rsp
9.03 2.90 1 ← retq
It shows for this symbol the average IPC is 2.30 and the IPC coverage
is 54.8%.
Signed-off-by: Jin Yao
---
tools/perf
bled when "symbol"
is specified.
v2:
---
Merge in Jiri's patch to support stdio mode
Signed-off-by: Jin Yao
---
tools/perf/builtin-report.c | 26 ---
tools/perf/util/hist.h | 1 +
tools/perf/util/sort.c | 61 +
too
We often use the symbol__annotate2() to annotate a specified symbol.
While annotating may take some time, so in order to avoid annotating
the same symbol repeatedly, the patch creates a new flag to indicate
the symbol has been annotated.
Signed-off-by: Jin Yao
---
tools/perf/util/annotate.c | 1
date such as adding { } for multiline code in 'if'
condition.
Jin Yao (3):
perf annotate: Compute average IPC and IPC coverage per symbol
perf annotate: Create a annotate2 flag in struct symbol
perf report: Display average IPC and IPC coverage per symbol
tools/perf/
On 11/28/2018 2:33 AM, Andi Kleen wrote:
On Tue, Nov 27, 2018 at 08:09:48PM +0800, Jin Yao wrote:
Support displaying the average IPC and IPC coverage for symbol
in perf report TUI browser. We create a new sort-key 'ipc' for
that.
Another thing that would be nice would be to aut
We often use the symbol__annotate2() to annotate a specified symbol.
While annotating may take some time, so in order to avoid annotating
the same symbol repeatedly, the patch creates a new flag to indicate
the symbol has been annotated.
Signed-off-by: Jin Yao
---
tools/perf/util/annotate.c | 1
3. Minor update such as adding { } for multiline code in 'if'
condition.
Jin Yao (3):
perf annotate: Compute average IPC and IPC coverage per symbol
perf annotate: Create a annotate2 flag in struct symbol
perf report: Display average IPC and IPC coverage per symbol
tool
__lll_unlock_wake_private
add$0x80,%rsp
21.56 2.908a: movslq 0xc(%rsp),%rax
2.90 add$0x18,%rsp
9.03 2.90 1 ← retq
It shows for this symbol the average IPC is 2.30 and the IPC coverage
is 54.8%.
Signed-off-by: Jin Yao
---
tools/perf
0.5%]
6.85% [.] rand@plt 0.00 [ 0.0%]
0.02% [k] run_timer_softirq 1.60 [ 57.2%]
v2:
---
Merge in Jiri's patch to support stdio mode
Signed-off-by: Jin Yao
---
tools/perf/Documentation/perf-report.txt | 1 +
tools/perf/builtin-report.c | 1
On 11/26/2018 5:53 PM, Jiri Olsa wrote:
On Mon, Nov 26, 2018 at 05:40:54PM +0800, Jin Yao wrote:
SNIP
diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index f96c005..94f62c8 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -13,6 +13,7 @@
#include "strl
On 11/26/2018 5:52 PM, Jiri Olsa wrote:
On Mon, Nov 26, 2018 at 05:40:54PM +0800, Jin Yao wrote:
Support displaying the average IPC and IPC coverage for symbol
in perf report TUI browser. We create a new sort-key 'ipc' for
that.
For example,
$ perf record -g -b ...
$ perf report
On 11/26/2018 5:55 PM, Jiri Olsa wrote:
On Mon, Nov 26, 2018 at 05:40:54PM +0800, Jin Yao wrote:
SNIP
diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index f96c005..94f62c8 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -13,6 +13,7 @@
#include "strl
[.] rand@plt 0.00 [ 0.0%]
Note that, stdio mode doesn't support this feature.
Signed-off-by: Jin Yao
---
tools/perf/Documentation/perf-report.txt | 1 +
tools/perf/builtin-report.c | 11
tools/perf/util/hist.h | 1 +
tools/p
,__abort_msg@@GLIBC_PRIVATE+0x8a0
...
Jin Yao (2):
perf annotate: Compute average IPC and IPC coverage per symbol
perf report: Display average IPC and IPC coverage per symbol
tools/perf/Documentation/perf-report.txt | 1 +
tools/perf/builtin-report.c | 11
tools/perf
__lll_unlock_wake_private
add$0x80,%rsp
21.56 2.908a: movslq 0xc(%rsp),%rax
2.90 add$0x18,%rsp
9.03 2.90 1 ← retq
It shows for this symbol the average IPC is 2.30 and the IPC coverage
is 54.8%.
Signed-off-by: Jin Yao
---
tools/perf
Commit-ID: 590ac60d8aa929bd21e35cd95a7d8720d00eb4f3
Gitweb: https://git.kernel.org/tip/590ac60d8aa929bd21e35cd95a7d8720d00eb4f3
Author: Jin Yao
AuthorDate: Wed, 31 Oct 2018 19:06:35 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Mon, 5 Nov 2018 14:37:11 -0300
perf top: Display
Hi,
Any comments for this patch?
Thanks
Jin Yao
On 10/31/2018 7:06 PM, Jin Yao wrote:
Perf report has supported the displaying of LBR stats
(such as cycles, predicted%) in callchain entry.
For example,
perf report --branch-history --stdio
--1.01%--intel_idle mwait.h:29
intel_idle
s:400)
0.58% pick_next_task_fair (cycles:47)
+ 0.56% i915_request_retire (cycles:2)
+ 0.52% do_sys_poll (cycles:4)
Signed-off-by: Jin Yao
---
tools/perf/builtin-top.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
One week nearly passed, I guess there is no any objections for this
patch from community. :)
Thanks
Jin Yao
On 9/4/2018 3:45 PM, Jin, Yao wrote:
On 9/4/2018 3:13 PM, Peter Zijlstra wrote:
On Tue, Sep 04, 2018 at 06:58:17PM +0800, Jin Yao wrote:
root@skx /sys/devices# ls | grep uncore_iio
On 9/4/2018 3:13 PM, Peter Zijlstra wrote:
On Tue, Sep 04, 2018 at 06:58:17PM +0800, Jin Yao wrote:
root@skx /sys/devices# ls | grep uncore_iio
uncore_iio_0
uncore_iio_1
uncore_iio_2
uncore_iio_3
uncore_iio_4
uncore_iio_5
uncore_iio_free_running_0
uncore_iio_free_running_1
or 'system wide':
153.12 MiB uncore_iio_pcie1/bw_in_port0/
8.469790720 seconds time elapsed
v2:
---
Previously, it used braces around initialized string. For example,
{ "iio_cbdma" }.
The braces around scalar initializer would cause the build warning.
In v2, it remo
or 'system wide':
153.12 MiB uncore_iio_pcie1/bw_in_port0/
8.469790720 seconds time elapsed
Signed-off-by: Jin Yao
---
arch/x86/events/intel/uncore.c | 9 +++--
arch/x86/events/intel/uncore.h | 1 +
arch/x86/events/intel/uncore_snbep.c | 10 ++
3 fil
On 6/18/2018 6:45 PM, Peter Zijlstra wrote:
On Mon, Jun 18, 2018 at 02:55:32PM +0800, Jin, Yao wrote:
Thanks for providing the patch. I understand this approach.
In my opinion, the skid window is from counter overflow to interrupt
delivered. While if the skid window is too *big* (e.g. user
On 6/15/2018 7:36 PM, Mark Rutland wrote:
On Fri, Jun 15, 2018 at 06:03:22PM +0800, Jin Yao wrote:
When doing sampling, for example:
perf record -e cycles:u ...
On workloads that do a lot of kernel entry/exits we see kernel
samples, even though :u is specified. This is due to skid existing
On 6/16/2018 8:56 AM, Kyle Huey wrote:
On Fri, Jun 15, 2018 at 5:50 PM, Jin, Yao wrote:
Hi All,
This patch raised many questions, I was prepared. :)
I'd like to try another proposal that it adds a special flag in the returned
perf_sample_data to indicate the perf binary that this s
has potential conflicts with some
applications.
Is this proposal reasonable?
Thanks
Jin Yao
On 6/16/2018 1:34 AM, Robert O'Callahan wrote:
On Fri, Jun 15, 2018 at 10:16 AM, Kyle Huey wrote:
If you want a sysctl for your own reasons that's fine. But we don't
want a sysctl. We wa
On 6/15/2018 4:12 PM, Peter Zijlstra wrote:
On Fri, Jun 15, 2018 at 04:01:45PM +0800, Jin, Yao wrote:
Bring more overhead to kernel if we zero the bits considering the number of
leaked samples may be not too small?
Keeping the samples at least allows you to know how many samples
happened
On 6/15/2018 3:45 PM, Peter Zijlstra wrote:
On Fri, Jun 15, 2018 at 06:03:21PM +0800, Jin Yao wrote:
On workloads that do a lot of kernel entry/exits we see kernel
samples, even though :u is specified. This is due to skid existing.
This might be a security issue because it can leak kernel
On 6/15/2018 1:59 PM, Stephane Eranian wrote:
On Thu, Jun 14, 2018 at 7:10 PM Jin Yao wrote:
When doing sampling, for example:
perf record -e cycles:u ...
On workloads that do a lot of kernel entry/exits we see kernel
samples, even though :u is specified. This is due to skid existing
if (event->attr.exclude_kernel && !user_mode(regs))
return false;
}
But rr needs to add PERF_SAMPLE_ALLOW_LEAKAGE to sample_type since by
default the bit is not set.
3. Sysctl is a more flexible way. It provides us with an option when we
want to see if skid is existing, we can use sysctl to turn on that.
Thanks
Jin Yao
ked kernel samples.
1 - don't drop the leaked kernel samples.
For rr it can write 1 to /sys/devices/cpu/perf_allow_sample_leakage to
keep original system behavior.
Jin Yao (2):
perf/core: Use sysctl to turn on/off dropping leaked kernel samples
perf Documentation: Intro
linux] [k] apic_timer_interrupt
0.00% div libc-2.23.so [.] intel_check_word
0.00% div ld-2.23.so[.] brk
0.00% div [kernel.vmlinux] [k] page_fault
0.00% div ld-2.23.so[.] _start
We can see the kernel symbols apic_timer_interrupt and
Introduce a new sysctl /sys/devices/cpu/perf_allow_sample_leakage, which
turns on/off dropping leaked kernel samples.
Signed-off-by: Jin Yao
---
tools/perf/Documentation/perf-record.txt | 14 ++
1 file changed, 14 insertions(+)
diff --git a/tools/perf/Documentation/perf-record.txt
Commit-ID: 5f9e0f3158a5cd0ef7bb205b9f1826b2ec1893a9
Gitweb: https://git.kernel.org/tip/5f9e0f3158a5cd0ef7bb205b9f1826b2ec1893a9
Author: Jin Yao
AuthorDate: Fri, 1 Jun 2018 17:01:01 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Wed, 6 Jun 2018 12:52:09 -0300
perf script python
Commit-ID: 48a1f565261d2ab1e17f9a3ad532cf6d9e07748d
Gitweb: https://git.kernel.org/tip/48a1f565261d2ab1e17f9a3ad532cf6d9e07748d
Author: Jin Yao
AuthorDate: Fri, 1 Jun 2018 17:01:02 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Wed, 6 Jun 2018 15:38:26 -0300
perf script python
Commit-ID: ac56aa4549cdfd9c56387b35e99e3c868cfc7bd0
Gitweb: https://git.kernel.org/tip/ac56aa4549cdfd9c56387b35e99e3c868cfc7bd0
Author: Jin Yao
AuthorDate: Fri, 1 Jun 2018 17:01:03 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Wed, 6 Jun 2018 15:40:10 -0300
perf script python
On 6/7/2018 2:36 AM, Arnaldo Carvalho de Melo wrote:
Em Fri, Jun 01, 2018 at 05:01:02PM +0800, Jin Yao escreveu:
+static int get_symoff(struct symbol *sym, struct addr_location *al,
+ bool print_off, char *bf, int size)
+{
+ unsigned long offset;
+
+ if
,iregs,uregs,and etc.
This patch adds these fields for perf script python.
Jin Yao (3):
perf script python: Move dsoname code to a new function
perf script python: Add more PMU fields
perf script python: Add fields introduction to Documentation
tools/perf/Documentation/perf-script-python.txt
This patch creates a new function get_dsoname() and move the
code which gets the dsoname string to this function.
That's because in next patch, when we process LBR data, we will
also need get_dsoname() to return dsoname for branch from/to.
Signed-off-by: Jin Yao
---
.../util/scripting-en
(converted string)
key : datasrc
key : datasrc_decode (decoded string)
key : iregs
key : uregs
key : weight
key : transaction
v2:
---
Add new fields for dso.
Use PyBool_FromLong() for mispred/predicted/in_tx/abort
Signed-off-by: Jin Yao
---
.../util/scripting-engines/trace-event-python.c
Add the brief introduction of fields to perf-script-python.txt.
It may help python script developer easily finding what fields
are supported.
Signed-off-by: Jin Yao
---
tools/perf/Documentation/perf-script-python.txt | 26 +
1 file changed, 26 insertions(+)
diff --git
On 5/31/2018 1:43 AM, Andi Kleen wrote:
On Wed, May 30, 2018 at 10:20:45PM +0800, Jin Yao wrote:
When doing pmu sampling and then running a script with
perf script -s script.py, the process_event function gets
dictionary with some fields from the perf ring buffer
(like ip, sym, callchain etc
e)
transaction (from sample->transaction, raw value)
Signed-off-by: Jin Yao
---
.../util/scripting-engines/trace-event-python.c| 212 -
1 file changed, 211 insertions(+), 1 deletion(-)
diff --git a/tools/perf/util/scripting-engines/trace-event-python.c
b/tools/perf/util
Commit-ID: 787e4da9f95fd44376b3af6fa163ac0b3a48a1fc
Gitweb: https://git.kernel.org/tip/787e4da9f95fd44376b3af6fa163ac0b3a48a1fc
Author: Jin Yao
AuthorDate: Tue, 22 May 2018 19:38:35 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Wed, 23 May 2018 10:26:40 -0300
perf annotate
Commit-ID: 7ebaf4890f63eb90856b76864a0847413cdf6c86
Gitweb: https://git.kernel.org/tip/7ebaf4890f63eb90856b76864a0847413cdf6c86
Author: Jin Yao
AuthorDate: Mon, 21 May 2018 22:57:46 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Mon, 21 May 2018 14:41:25 -0300
perf annotate
Commit-ID: a26bb0ba706aef4f42cc9377c0d4e849378574a4
Gitweb: https://git.kernel.org/tip/a26bb0ba706aef4f42cc9377c0d4e849378574a4
Author: Jin Yao
AuthorDate: Mon, 21 May 2018 22:57:45 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Mon, 21 May 2018 14:41:01 -0300
perf report: Use
Commit-ID: e2bdbe80a0b7dea9ba73582701b8a67c01e1da4f
Gitweb: https://git.kernel.org/tip/e2bdbe80a0b7dea9ba73582701b8a67c01e1da4f
Author: Jin Yao
AuthorDate: Mon, 21 May 2018 22:57:44 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Mon, 21 May 2018 14:40:54 -0300
perf evlist
4407 samples)
..
The first line doesn't include the event 'branches'.
With this patch, it will show the correct group even string.
perf annotate --group --stdio
Percent | Source code & Disassembly of div for cycles, branches (44407
samples)
......
On 5/22/2018 1:43 AM, Arnaldo Carvalho de Melo wrote:
Em Mon, May 21, 2018 at 10:57:46PM +0800, Jin Yao escreveu:
With the '--group' option, even for non-explicit group, perf annotate
will enable the group output.
For example,
perf record -e cycles,branches ./div
perf annotate ma
Since we have created a new function perf_evlist__force_leader,
so now remove the old code and use perf_evlist__force_leader
instead.
Signed-off-by: Jin Yao
---
tools/perf/builtin-report.c | 13 ++---
1 file changed, 2 insertions(+), 11 deletions(-)
diff --git a/tools/perf/builtin
For non-explicit group, perf report supports a option '--group'
which can enable group output. We also need to support perf annotate
with the same '--group'.
Create a new function perf_evlist__force_leader which contains
common code to force setting the group leader.
Si
27;perf annotate: Support multiple events without group'
Jin Yao (3):
perf evlist: Create new function perf_evlist__force_leader
perf report: Use perf_evlist__force_leader to support '--group'
perf annotate: Support '--group' option
tools/perf/builtin-annotate.c
or%edi,%edi
:srand(s_randseed);
0.00 : 4004b3: mov$0x77359400,%ebx
:
:return i;
:}
Signed-off-by: Jin Yao
---
tools/perf/builtin-annotate.c | 7 +++
1 file changed, 7 insertions(+)
di
Commit-ID: 3e71fc0319775723adc08991ba7fbaeff1150347
Gitweb: https://git.kernel.org/tip/3e71fc0319775723adc08991ba7fbaeff1150347
Author: Jin Yao
AuthorDate: Thu, 17 May 2018 22:58:38 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Sat, 19 May 2018 06:42:49 -0300
perf annotate
Commit-ID: 48659ebf37e5d9d23bda6dbf032bdbe9708929f1
Gitweb: https://git.kernel.org/tip/48659ebf37e5d9d23bda6dbf032bdbe9708929f1
Author: Jin Yao
AuthorDate: Thu, 17 May 2018 22:58:37 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Fri, 18 May 2018 16:31:41 -0300
perf annotate
On 5/18/2018 10:18 PM, Arnaldo Carvalho de Melo wrote:
Em Sat, May 19, 2018 at 12:00:32AM +0800, Jin Yao escreveu:
For non-explicit group, perf report supports a option '--group'
which can enable group output. We also need to support perf annotate
with the same '--group&
For non-explicit group, perf report supports a option '--group'
which can enable group output. We also need to support perf annotate
with the same '--group'.
Create a new function perf_evlist_forced_leader which contains
common code to force setting the group leader.
Si
or%edi,%edi
:srand(s_randseed);
0.00 : 4004b3: mov$0x77359400,%ebx
:
:return i;
:}
Signed-off-by: Jin Yao
---
tools/perf/builtin-annotate.c | 7 +++
1 file changed, 7 insertions(+)
di
Since we have created a new function perf_evlist_forced_leader,
so now remove the old code and use perf_evlist_forced_leader
instead.
Signed-off-by: Jin Yao
---
tools/perf/builtin-report.c | 13 ++---
1 file changed, 2 insertions(+), 11 deletions(-)
diff --git a/tools/perf/builtin
patch 'perf annotate: Support multiple events without group'
Jin Yao (3):
perf evlist: Create a new function perf_evlist_forced_leader
perf report: Use perf_evlist_forced_leader to support '--group'
perf annotate: Support '--group' option
tools/perf/builtin
On 5/18/2018 3:04 PM, Jiri Olsa wrote:
On Fri, May 18, 2018 at 08:57:39PM +0800, Jin Yao wrote:
Since we have created a new function perf_evlist_forced_leader,
so now remove the old code and use perf_evlist_forced_leader
instead.
Signed-off-by: Jin Yao
---
tools/perf/builtin-report.c | 8
or%edi,%edi
:srand(s_randseed);
0.00 : 4004b3: mov$0x77359400,%ebx
:
:return i;
:}
Signed-off-by: Jin Yao
---
tools/perf/builtin-annotate.c | 7 +++
1 file changed, 7 insertions(+)
di
Since we have created a new function perf_evlist_forced_leader,
so now remove the old code and use perf_evlist_forced_leader
instead.
Signed-off-by: Jin Yao
---
tools/perf/builtin-report.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/tools/perf/builtin-report.c b
For non-explicit group, perf report supports a option '--group'
which can enable group output. We also need to support perf annotate
with the same '--group'.
Create a new function perf_evlist_forced_leader which contains
common code to force setting the group leader.
Si
--
Post the patch 'perf annotate: Support multiple events without group'
Jin Yao (3):
perf evlist: Create a new function perf_evlist_forced_leader
perf report: Use perf_evlist_forced_leader to support '--group'
perf annotate: Support '--group' option
On 5/18/2018 4:27 AM, Jiri Olsa wrote:
On Thu, May 17, 2018 at 01:27:50PM -0300, Arnaldo Carvalho de Melo wrote:
Em Thu, May 10, 2018 at 09:59:22PM +0800, Jin Yao escreveu:
See example,
perf record -e cycles,branches ./div
perf annotate main --stdio or
perf annotate main --stdio2 or
perf
On 5/18/2018 4:06 AM, Arnaldo Carvalho de Melo wrote:
Em Thu, May 17, 2018 at 10:58:38PM +0800, Jin Yao escreveu:
In perf annotate view, a new hotkey 'c' is created for
showing the max/min cycles.
I just changed everything from "max/min" to "min/max", as i
cycles but also the max and min cycles.
This patch records the max and min cycles.
Signed-off-by: Jin Yao
---
tools/perf/util/annotate.c | 14 +-
tools/perf/util/annotate.h | 4
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/tools/perf/util/annotate.c b/tools/perf
p43
│1.1020: cmpxchg %esi,__abort_msg@@GLIBC_PRIVATE+0x8a0
8.93 │1.10 1 ↓ je 43
Jin Yao (2):
perf annotate: Record the max/min cycles
perf annotate: Create hotkey 'c' to show max/min cycles
tools/perf/ui/browsers/annotate.c | 8 ++
tools/pe
│↓ jne29
│↓ jmp43
│1.1020: cmpxchg %esi,__abort_msg@@GLIBC_PRIVATE+0x8a0
8.93 │1.10 1 ↓ je 43
Signed-off-by: Jin Yao
---
tools/perf/ui/browsers/annotate.c | 8
tools/perf/util/annotate.c| 37 +++
Hi,
Any comments for this fix?
Thanks
Jin Yao
On 5/10/2018 9:59 PM, Jin Yao wrote:
See example,
perf record -e cycles,branches ./div
perf annotate main --stdio or
perf annotate main --stdio2 or
perf annotate main
The "perf annotate" should show both cycles and branches on the
left
Commit-ID: 04d2600ab669b2d44dd7920cc8a1b95c8144084c
Gitweb: https://git.kernel.org/tip/04d2600ab669b2d44dd7920cc8a1b95c8144084c
Author: Jin Yao
AuthorDate: Wed, 9 May 2018 23:57:15 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 10 May 2018 15:19:30 -0300
perf annotate
for (i = 0; i < 20; i++) {
flag = compute_flag();
4.85 5.83 38: xor%eax,%eax
0.01 0.01 → callq compute_flag
count++;
4.44 2.27movcount,%edx
0.00 0.00add
On 5/10/2018 1:24 AM, Arnaldo Carvalho de Melo wrote:
Em Wed, May 09, 2018 at 01:42:51PM -0300, Arnaldo Carvalho de Melo escreveu:
Em Wed, May 09, 2018 at 11:57:15PM +0800, Jin Yao escreveu:
When we perform following command lines:
perf record -e "{cycles,branches}" ./div
perf ann
On 5/10/2018 12:42 AM, Arnaldo Carvalho de Melo wrote:
Em Wed, May 09, 2018 at 11:57:15PM +0800, Jin Yao escreveu:
When we perform following command lines:
perf record -e "{cycles,branches}" ./div
perf annotate main --stdio
Only shows one event "cycles" and the disp
04b1: xor%edi,%edi
:srand(s_randseed);
0.000.00 : 4004b3: mov$0x77359400,%ebx
:
:return i;
: }
Signed-off-by: Jin Yao
---
tools/perf/util/annotate.c | 3 +++
Commit-ID: 8a812bf552d98f6f887f860d3910f201b4a97b26
Gitweb: https://git.kernel.org/tip/8a812bf552d98f6f887f860d3910f201b4a97b26
Author: Jin Yao
AuthorDate: Mon, 9 Apr 2018 18:26:49 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 12 Apr 2018 10:33:34 -0300
perf version
Commit-ID: 22e9af4e94801bbdf6945e55db64b877be7c71b3
Gitweb: https://git.kernel.org/tip/22e9af4e94801bbdf6945e55db64b877be7c71b3
Author: Jin Yao
AuthorDate: Mon, 9 Apr 2018 18:26:48 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 12 Apr 2018 10:33:31 -0300
perf tools: Rename
add a line for HAVE_SYSCALL_TABLE_SUPPORT.
Jin Yao (3):
perf script: Use HAVE_LIBXXX_SUPPORT to replace NO_LIBXXX
perf: Rename HAVE_SYSCALL_TABLE to HAVE_SYSCALL_TABLE_SUPPORT
perf version: Print status for syscall_table
tools/perf/Makefile.config | 2 +-
tools/perf
get_cpuid: [ on ] # HAVE_AUXTRACE_SUPPORT
bpf: [ on ] # HAVE_LIBBPF_SUPPORT
The line "syscall_table: [ on ] # HAVE_SYSCALL_TABLE_SUPPORT" is
new created.
Signed-off-by: Jin Yao
---
tools/perf/builtin-version.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tools/perf/built
To make consistent with other HAVE_XXX_SUPPORT in Makefile.config,
this patch renames HAVE_SYSCALL_TABLE to HAVE_SYSCALL_TABLE_SUPPORT
and update the C code accordingly.
Signed-off-by: Jin Yao
---
tools/perf/Makefile.config | 2 +-
tools/perf/builtin-help.c | 2 +-
tools/perf
Commit-ID: 709846725673a944ee38da1c275a6dfbf0576d0f
Gitweb: https://git.kernel.org/tip/709846725673a944ee38da1c275a6dfbf0576d0f
Author: Jin Yao
AuthorDate: Fri, 30 Mar 2018 17:27:16 +0800
Committer: Arnaldo Carvalho de Melo
CommitDate: Mon, 2 Apr 2018 13:52:23 -0300
perf version: Add
601 - 700 of 1001 matches
Mail list logo