[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1131f97d-6a8a-6c29-c60e-292cd612468f@huawei.com>
Date: Thu, 16 Jun 2022 09:42:10 +0800
From: Yang Jihong <yangjihong1@...wei.com>
To: Namhyung Kim <namhyung@...nel.org>
CC: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-perf-users <linux-perf-users@...r.kernel.org>
Subject: Re: [RFC 09/13] perf kwork: Add workqueue report support
Hello,
On 2022/6/16 5:56, Namhyung Kim wrote:
> On Tue, Jun 14, 2022 at 8:22 PM Yang Jihong <yangjihong1@...wei.com> wrote:
>>
>> Hello,
>>
>> On 2022/6/15 5:54, Namhyung Kim wrote:
>>> On Mon, Jun 13, 2022 at 2:48 AM Yang Jihong <yangjihong1@...wei.com> wrote:
>>>>
>>>> Implements workqueue report function.
>>>>
>>>> test case:
>>>>
>>>> # perf kwork -k workqueue rep
>>>>
>>>> Kwork Name | Cpu | Total Runtime | Frequency | Max runtime | Max runtime start | Max runtime end |
>>>> ---------------------------------------------------------------------------------------------------------------------------
>>>> (w)0xffffffff83e09fa0 | 0001 | 2152.678 ms | 194 | 12.376 ms | 2059361.546621 s | 2059361.558997 s |
>>>> (w)0xffff888332fea180 | 0000 | 17.125 ms | 301 | 1.018 ms | 2059358.441070 s | 2059358.442089 s |
>>>> (w)0xffff8881035a83d8 | 0007 | 7.556 ms | 3 | 3.212 ms | 2059362.614643 s | 2059362.617855 s |
>>>> (w)0xffff888102fc14a0 | 0002 | 7.080 ms | 5 | 1.962 ms | 2059365.421753 s | 2059365.423714 s |
>>>> (w)0xffffffff82f7da00 | 0000 | 4.277 ms | 7 | 3.778 ms | 2059360.851063 s | 2059360.854841 s |
>>>> (w)0xffffffff8305d680 | 0006 | 1.796 ms | 1 | 1.796 ms | 2059360.046818 s | 2059360.048613 s |
>>>> (w)0xffff8883339e9040 | 0005 | 1.659 ms | 2 | 1.619 ms | 2059361.266051 s | 2059361.267670 s |
>>>> (w)0xffff888333de9040 | 0007 | 1.121 ms | 5 | 0.783 ms | 2059368.238059 s | 2059368.238842 s |
>>>> (w)0xffff888332fe9040 | 0000 | 0.990 ms | 4 | 0.911 ms | 2059359.604075 s | 2059359.604986 s |
>>>> (w)0xffff8883331e9040 | 0001 | 0.244 ms | 6 | 0.046 ms | 2059362.689277 s | 2059362.689323 s |
>>>> (w)0xffff888102e44400 | 0007 | 0.239 ms | 2 | 0.137 ms | 2059363.117537 s | 2059363.117674 s |
>>>> (w)0xffff8883333ea180 | 0002 | 0.141 ms | 5 | 0.049 ms | 2059365.423784 s | 2059365.423833 s |
>>>> (w)0xffffffff83062f28 | 0006 | 0.084 ms | 2 | 0.047 ms | 2059358.208033 s | 2059358.208080 s |
>>>> (w)0xffffffff8305ca48 | 0003 | 0.078 ms | 2 | 0.041 ms | 2059361.071371 s | 2059361.071412 s |
>>>> (w)0xffff8883337e9040 | 0004 | 0.062 ms | 1 | 0.062 ms | 2059362.605723 s | 2059362.605785 s |
>>>> (w)0xffff8881035a81e8 | 0001 | 0.056 ms | 1 | 0.056 ms | 2059363.118231 s | 2059363.118287 s |
>>>> (w)0xffff8883335e9040 | 0003 | 0.026 ms | 1 | 0.026 ms | 2059358.573397 s | 2059358.573423 s |
>>>> (w)0xffffffff83062e70 | 0006 | 0.023 ms | 1 | 0.023 ms | 2059368.398864 s | 2059368.398888 s |
>>>> (w)0xffffffff83e06480 | 0002 | 0.000 ms | 1 | 0.000 ms | 2059359.986792 s | 2059359.986792 s |
>>>
>>> Using "function" in the tracepoint and symbolizing it would be
>>> far more intuitive.
>>>
>> OKļ¼This is a simplified version that will be improved in the next
>> version, and I'd like to add the following features:
>> 1. Supports the kthread profile.
>
> Could you elaborate more?
trace kthread tracepoints (sched:sched_kthread_work_queue_work, sched:
sched_kthread_work_execute_start and
sched:sched_kthread_work_execute_end) can support kthread profile,
because framework has been set up. we only need to add a new kthread
class class.
>
>> 2. Save runtime and latency in kernel using ebpf(similar to "perf
>> record: Implement off-cpu profiling with BPF") . This reduces the number
>> of interruptions caused by writing files to hard disks, which is closer
>> to the actual scenario.
>
> Sounds great.
OK, I'll add it in next version.
>
>>
>> This RFC is sent to discuss to see if this function is useful to the
>> community and can be accepted by the community. :)
>
> Yeah I think it'd be useful.
Thanks for your affirmation.
Thanks,
Jihong
Powered by blists - more mailing lists