[PATCH v5 7/7] perf test: Add a test for default perf stat command

James Clark james.clark at linaro.org
Fri Aug 30 01:45:11 PDT 2024



On 30/08/2024 9:29 am, James Clark wrote:
> 
> 
> On 30/08/2024 7:32 am, Namhyung Kim wrote:
>> Hello,
>>
>> On Wed, Aug 28, 2024 at 03:07:21PM +0100, James Clark wrote:
>>> Test that one cycles event is opened for each core PMU when "perf stat"
>>> is run without arguments.
>>>
>>> The event line can either be output as "pmu/cycles/" or just "cycles" if
>>> there is only one PMU. Include 2 spaces for padding in the one PMU case
>>> to avoid matching when the word cycles is included in metric
>>> descriptions.
>>>
>>> Signed-off-by: James Clark <james.clark at linaro.org>
>>> ---
>>>   tools/perf/tests/shell/stat.sh | 21 +++++++++++++++++++++
>>>   1 file changed, 21 insertions(+)
>>>
>>> diff --git a/tools/perf/tests/shell/stat.sh 
>>> b/tools/perf/tests/shell/stat.sh
>>> index 525d0c44fdc6..24ace1de71cc 100755
>>> --- a/tools/perf/tests/shell/stat.sh
>>> +++ b/tools/perf/tests/shell/stat.sh
>>> @@ -148,6 +148,26 @@ test_cputype() {
>>>     echo "cputype test [Success]"
>>>   }
>>> +test_hybrid() {
>>> +  # Test the default stat command on hybrid devices opens one cycles 
>>> event for
>>> +  # each CPU type.
>>> +  echo "hybrid test"
>>> +
>>> +  # Count the number of core PMUs
>>> +  pmus=$(ls /sys/bus/event_source/devices/*/cpus 2>/dev/null | wc -l)
>>
>> Is it working on non-hybrid systems?  I don't think they have cpus file
>> in the core PMU.
>>
>> Thanks,
>> Namhyung
>>
> 
> Good point I only tested on Arm non-hybrid. I can change it to assume 1 
> PMU for no cpus files?

Or maybe assume 1 if a /sys/bus/event_source/devices/cpu folder exists? 
Not sure which is best but either will work.



More information about the linux-arm-kernel mailing list