Hi Damjan, ARM defines two sets of performance monitoring counters and extension 1. Common Event number and micro-architecture events defined by ARM which every chip vendor should implement. 2. Chip vendor specific PMU counters other than (1)
I am not in ThunderX2 BU but I think the kernel driver you are referring to seems to be a PMU extension which falls under the category of (2) above. See below for OCTEONTX2 output So for ARM to be enabled in perfmon plugin, I am thinking, - we need common bundle to register common ARM PMU events. This should be first step and include most of the useful/important events - chip vendor specific bundle should also be allowed to "implementation defined" PMU events One of the key differentiation in ARM is a kernel driver needs to be hooked at runtime to allow VPP to get hold of PMU counters (which is not the case with x86) >>> Can you capture contents of /sys/bus/event_source/devices/ from one system? I do not have ThunderX2 access but here is the output of OCTEONTX2 $ ls -ltr /sys/bus/event_source/devices/ total 0 lrwxrwxrwx 1 root root 0 Dec 14 06:48 software -> ../../../devices/software lrwxrwxrwx 1 root root 0 Dec 14 06:48 cs_etm -> ../../../devices/cs_etm lrwxrwxrwx 1 root root 0 Dec 14 06:48 breakpoint -> ../../../devices/breakpoint lrwxrwxrwx 1 root root 0 Dec 14 06:48 tracepoint -> ../../../devices/tracepoint lrwxrwxrwx 1 root root 0 Dec 14 06:48 armv8_cavium_thunder -> ../../../devices/armv8_cavium_thunder Thanks, Nitin > -----Original Message----- > From: Damjan Marion <dmar...@me.com> > Sent: Monday, December 14, 2020 4:19 PM > To: Nitin Saxena <nsax...@marvell.com> > Cc: vpp-dev <vpp-dev@lists.fd.io> > Subject: Re: [EXT] [vpp-dev] New perfmon plugin > > > Isn’t there also uncore PMU? I can see some thunderx2 specific driver in > kernel source. > > Can you capture contents of /sys/bus/event_source/devices/ from one > system? > > Thanks, > > — > Damjan > > > > On 14.12.2020., at 09:09, Nitin Saxena <nsax...@marvell.com> wrote: > > > > Yes most of the ARM processors including ThunderX2, OCTEONTX2 has > PMU as per AARCH64 specifications. I did some analysis to add ARM support > in older perfmon plugin and should be easy to port to this new one. This is > something in TODO list which is much needed for us and overall ARM > > > > Thanks, > > Nitin > > > >> -----Original Message----- > >> From: Damjan Marion <dmar...@me.com> > >> Sent: Saturday, December 12, 2020 7:46 PM > >> To: Nitin Saxena <nsax...@marvell.com> > >> Cc: vpp-dev <vpp-dev@lists.fd.io> > >> Subject: Re: [EXT] [vpp-dev] New perfmon plugin > >> > >> > >> cool, if I got it right ThunderX2 have > >> own PMU so we can add it as new source and create specific bundles. > >> > >> -- > >> Damjan > >> > >>> On 12.12.2020., at 11:07, Nitin Saxena <nsax...@marvell.com> wrote: > >>> > >>> Hi Damjan, > >>> > >>> I was already fan of older perfmon plugin and new one seems superset > >>> of the older one (at-least from video) > >>> > >>> Nice addition > >>> > >>> Thanks, > >>> Nitin > >>> > >>>> -----Original Message----- > >>>> From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Damjan > >>>> Marion via lists.fd.io > >>>> Sent: Friday, December 11, 2020 9:44 PM > >>>> To: vpp-dev <vpp-dev@lists.fd.io> > >>>> Subject: [EXT] [vpp-dev] New perfmon plugin > >>>> > >>>> External Email > >>>> > >>>> --------------------------------------------------------------------- > >>>> - > >>>> > >>>> Guys, > >>>> > >>>> I just submitted patch with the new perfmon plugin: [1] > >>>> > >>>> It takes significantly different approach compared to current one. > >>>> > >>>> - it support multiple sources of perf counters (linux, intel core, > >>>> intel uncore) and it is extensible to other vendors > >>>> - it have concept instances so it can monitor multiple instances of > >>>> specific PMU (DRAM channels, UPI/QPU links, ..) > >>>> - it supports node, thread and system metrics > >>>> - different metrics are organized in bundles, where bundle consists > >>>> of multiple counters and format functions which calculates and > presents > >> metric. > >>>> Yuo can find example of bundle here [2] > >>>> > >>>> To se how this looks in action, I captured small asciinema video: [3] > >>>> > >>>> As this new plugin is significantly different than old one, I wonder > >>>> if anyone thinks we should keep old une. > >>>> Also, any other feedback is wellcome. > >>>> > >>>> Thanks, > >>>> > >>>> Damjan > >>>> > >>>> > >>>> [1] https://urldefense.proofpoint.com/v2/url?u=https- > >>>> 3A__gerrit.fd.io_r_c_vpp_- > >>>> > >> > 2B_30186&d=DwIFAg&c=nKjWec2b6R0mOyPaz7xtfQ&r=S4H7jibYAtA5YOvfL3 > >>>> > >> > IkGduCfk9LbZMPOAecQGDzWV0&m=YLtsj5dRrH71jbO5dLDi4wZVjd_BZiWves > >>>> > g69AEyXxg&s=4tTXQv2yVPh7WGV5S1eL8TKk7hzW5hs9HV5HffGAZWg&e= > >>>> [2] https://urldefense.proofpoint.com/v2/url?u=https- > >>>> 3A__gerrit.fd.io_r_c_vpp_- > >>>> 2B_30186_12_src_plugins_perfmon_intel_bundle_load- > >>>> > >> > 5Fblocks.c&d=DwIFAg&c=nKjWec2b6R0mOyPaz7xtfQ&r=S4H7jibYAtA5YOvfL3 > >>>> > >> > IkGduCfk9LbZMPOAecQGDzWV0&m=YLtsj5dRrH71jbO5dLDi4wZVjd_BZiWves > >>>> g69AEyXxg&s=4vBJsKjTB2jgQ_knZlMqSPL9zu9r61mn_EDKfPaxP30&e= > >>>> [3] https://urldefense.proofpoint.com/v2/url?u=https- > >>>> > >> > 3A__asciinema.org_a_aFN5rMFYw0RPvGOZiFsziXV5w&d=DwIFAg&c=nKjWec > >>>> > >> > 2b6R0mOyPaz7xtfQ&r=S4H7jibYAtA5YOvfL3IkGduCfk9LbZMPOAecQGDzWV0 > >>>> &m=YLtsj5dRrH71jbO5dLDi4wZVjd_BZiWvesg69AEyXxg&s=OOSrE- > >>>> xR_qMePcPBdjlV1FSyjeguxIFhIl7_W98ghFk&e= > >>> > >>> > >>> > >>> > > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#18327): https://lists.fd.io/g/vpp-dev/message/18327 Mute This Topic: https://lists.fd.io/mt/78904118/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-