[dpdk-dev] About pmu cycle counter usage in armv8
hejianet at gmail.com
Mon Dec 11 07:23:54 CET 2017
And I wonder why you haven't met such problem (all rd_tsc() is 0)in your
Did you use an old kernel (older than v4.5-rc1)?
root at aw-host:~/linux# git describe da4e4f18afe0
Maybe you need to give a warning that, the usage of High-resolution
cycle counter is not
correct if the kernel version is newer than v4.5-rc1-8-gda4e4f1?
On 12/11/2017 1:59 PM, Jerin Jacob Wrote:
> -----Original Message-----
>> Date: Mon, 11 Dec 2017 13:38:25 +0800
>> From: Jia He <hejianet at gmail.com>
>> To: Jerin Jacob <jerin.jacob at caviumnetworks.com>, "dev at dpdk.org"
>> <dev at dpdk.org>
>> Subject: About pmu cycle counter usage in armv8
>> User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101
>> Hi Jerin
>> In , I met a pmu cycle counter problem (all return value is 0)
>> And then I submited a patch to kernel maillist, but was rejected by
>> maintainer at last .
>> He said:
>> "We only intend for the in-kernel perf infrastructure to access
>> pmccntr_el0; nothing else should touch it."
> Yes. That's the reason why
> 1) A warning added in documentation.
> See at last
> The PMU based scheme is useful for high accuracy performance profiling
> with rte_rdtsc(). However, this method can not be used in conjunction
> with Linux userspace profiling tools like perf as this scheme alters the
> PMU registers state.
> 2) By default it is disabled and not need for production systems.
> Needed only for performance debugging.
>> So maybe it is not proper for dpdk to use pmu cycle counter?
> But, There is no alternative in arm64 to get high resolution counter in
> user space(in performance effective way)
>>  http://dpdk.org/ml/archives/dev/2017-November/080998.html
More information about the dev