[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bcfabb85-4dc1-e642-4a82-f3b8cc009b0b@amd.com>
Date: Tue, 29 Aug 2023 11:07:17 +0530
From: Ravi Bangoria <ravi.bangoria@....com>
To: Yang Jihong <yangjihong1@...wei.com>, acme@...nel.org,
irogers@...gle.com, jolsa@...nel.org, namhyung@...nel.org,
adrian.hunter@...el.com
Cc: peterz@...radead.org, mingo@...hat.com, mark.rutland@....com,
alexander.shishkin@...ux.intel.com, kan.liang@...ux.intel.com,
james.clark@....com, tmricht@...ux.ibm.com, ak@...ux.intel.com,
anshuman.khandual@....com, linux-kernel@...r.kernel.org,
linux-perf-users@...r.kernel.org,
Ravi Bangoria <ravi.bangoria@....com>
Subject: Re: [PATCH v7 0/6] perf record: Track sideband events for all CPUs
when tracing selected CPUs
On 26-Aug-23 8:56 AM, Yang Jihong wrote:
> User space tasks can migrate between CPUs, track sideband events for all
> CPUs.
I've tested this series with simple test program and it mostly works fine.
Tested-by: Ravi Bangoria <ravi.bangoria@....com>
Since we are recording sideband data on all cpus, perf will endup recording
lots of unnecessary data, esp. on large systems. E.g. on a 128 cpu system:
Without patch:
$ sudo ./perf record -C 10 -o perf.data.without -- sleep 10
$ du -d1 -ha ./perf.data.without
3.0M ./perf.data.without
$ sudo ./perf report --stats -i perf.data.without
Aggregated stats:
TOTAL events: 47011
MMAP events: 51 ( 0.1%)
COMM events: 1549 ( 3.3%)
EXIT events: 105 ( 0.2%)
FORK events: 1544 ( 3.3%)
SAMPLE events: 38226 (81.3%)
MMAP2 events: 5485 (11.7%)
...
cycles:P stats:
SAMPLE events: 38226
With patch:
$ sudo ./perf record -C 10 -o perf.data.with -- sleep 10
$ du -d1 -ha ./perf.data.with
15M ./perf.data.with
$ sudo ./perf report --stats -i perf.data.with
Aggregated stats:
TOTAL events: 160164
MMAP events: 51 ( 0.0%)
COMM events: 12879 ( 8.0%)
EXIT events: 11192 ( 7.0%)
FORK events: 12669 ( 7.9%)
SAMPLE events: 38464 (24.0%)
MMAP2 events: 84844 (53.0%)
...
cycles:P stats:
SAMPLE events: 38464
Number of actual samples are same ~38K. However, the perf.data file is 5x
bigger because of additional sideband data.
I'm pretty sure we don't need most of those additional data. So, thinking
loud, should we post-process perf.data file and filter out unnecessary data?
Thanks,
Ravi
Powered by blists - more mailing lists