Re: [PATCHSET 00/10] perf tools: Apply percent-limit to callchains (v2)

From: Namhyung Kim
Date: Thu Jan 28 2016 - 05:17:15 EST


On Thu, Jan 28, 2016 at 7:14 PM, Namhyung Kim <namhyung@xxxxxxxxxx> wrote:
> On Thu, Jan 28, 2016 at 5:16 PM, Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
>> On Thu, Jan 28, 2016 at 12:40:47AM +0900, Namhyung Kim wrote:
>>> Hello,
>>>
>>> This patchset tries to implement percent limit to callchains which was
>>> requested by Andi Kleen. For some reason, limiting callchains by
>>> (overhead) percentage didn't work well. This patch fixes it and make
>>> --percent-limit also works for callchains as well as hist entries.
>>>
>>> * Changes from v1)
>>> - fix insertion path instead of changing all UI code
>>> - show percent value even on single path (if needed)
>>> - change default callchain percent limit
>>>
>>> This is available on 'perf/callchain-limit-v2' branch in my tree:
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
>>>
>>> Any comments are welcome,
>>>
>>> Thanks,
>>> Namhyung
>>> *** BLURB HERE ***
>>>
>>> Namhyung Kim (10):
>>> perf hists: Fix min callchain hits calculation
>>> perf hists: Update hists' total period when adding entries
>>> perf report: Apply --percent-limit to callchains also
>>> perf report: Get rid of hist_entry__callchain_fprintf()
>>> perf tools: Pass parent_samples to __callchain__fprintf_graph()
>>> perf report: Fix percent display in callchains on --stdio
>>> perf hists browser: Fix dump to show correct callchain style
>>> perf hists browser: Pass parent_total to callchain print functions
>>> perf hists browser: Fix percent display in callchains
>>> perf tools: Change default calchain percent limit to 0.005%
>>
>> also I see extra fo entries with callchain filtered out in stdio mode
>>
>> jirka
>>
>>
>> ---
>> 8.41% yes libc-2.21.so [.] fputs_unlocked
>> |
>> ---fputs_unlocked
>> |
>> |--5.67%--0x757074756f206472
>> |
>> --2.74%--0x3ba8e0
>> 0x21e000
>>
>> 2.47% yes yes [.] fputs_unlocked@plt
>> |
>> ---fputs_unlocked@plt
>> 0x3ba8e0
>> 0x21e000
>>
>> 0.12% yes [kernel.vmlinux] [k] vfs_write
>>
>> 0.09% yes libc-2.21.so [.] _IO_do_write@@GLIBC_2.2.5
>>
>> 0.08% yes [kernel.vmlinux] [k] entry_SYSCALL_64
>>
>> 0.07% yes [kernel.vmlinux] [k] fsnotify
>>
>> 0.06% yes [kernel.vmlinux] [k] sys_write
>>
>
> I guess it's same for other UI outputs too.
>
> The default limit of hist entries is 0 so it basically shows all
> entries. But default callchain limit is 0.5% so hist entries under
> 0.5% won't show callchains.

Btw, I changed it to 0.005% in this patchset. Did you apply all the
patches and run 'perf report' with default value?

Thanks,
Namhyung