18c2ecf20Sopenharmony_ciWhat: /sys/devices/cpu/events/ 28c2ecf20Sopenharmony_ci /sys/devices/cpu/events/branch-misses 38c2ecf20Sopenharmony_ci /sys/devices/cpu/events/cache-references 48c2ecf20Sopenharmony_ci /sys/devices/cpu/events/cache-misses 58c2ecf20Sopenharmony_ci /sys/devices/cpu/events/stalled-cycles-frontend 68c2ecf20Sopenharmony_ci /sys/devices/cpu/events/branch-instructions 78c2ecf20Sopenharmony_ci /sys/devices/cpu/events/stalled-cycles-backend 88c2ecf20Sopenharmony_ci /sys/devices/cpu/events/instructions 98c2ecf20Sopenharmony_ci /sys/devices/cpu/events/cpu-cycles 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ciDate: 2013/01/08 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciDescription: Generic performance monitoring events 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci A collection of performance monitoring events that may be 188c2ecf20Sopenharmony_ci supported by many/most CPUs. These events can be monitored 198c2ecf20Sopenharmony_ci using the 'perf(1)' tool. 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci The contents of each file would look like: 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci event=0xNNNN 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci where 'N' is a hex digit and the number '0xNNNN' shows the 268c2ecf20Sopenharmony_ci "raw code" for the perf event identified by the file's 278c2ecf20Sopenharmony_ci "basename". 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciWhat: /sys/bus/event_source/devices/<pmu>/events/<event> 318c2ecf20Sopenharmony_ciDate: 2014/02/24 328c2ecf20Sopenharmony_ciContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 338c2ecf20Sopenharmony_ciDescription: Per-pmu performance monitoring events specific to the running system 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci Each file (except for some of those with a '.' in them, '.unit' 368c2ecf20Sopenharmony_ci and '.scale') in the 'events' directory describes a single 378c2ecf20Sopenharmony_ci performance monitoring event supported by the <pmu>. The name 388c2ecf20Sopenharmony_ci of the file is the name of the event. 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci File contents: 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci <term>[=<value>][,<term>[=<value>]]... 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ci Where <term> is one of the terms listed under 458c2ecf20Sopenharmony_ci /sys/bus/event_source/devices/<pmu>/format/ and <value> is 468c2ecf20Sopenharmony_ci a number is base-16 format with a '0x' prefix (lowercase only). 478c2ecf20Sopenharmony_ci If a <term> is specified alone (without an assigned value), it 488c2ecf20Sopenharmony_ci is implied that 0x1 is assigned to that <term>. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci Examples (each of these lines would be in a seperate file): 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci event=0x2abc 538c2ecf20Sopenharmony_ci event=0x423,inv,cmask=0x3 548c2ecf20Sopenharmony_ci domain=0x1,offset=0x8,starting_index=0xffff 558c2ecf20Sopenharmony_ci domain=0x1,offset=0x8,core=? 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci Each of the assignments indicates a value to be assigned to a 588c2ecf20Sopenharmony_ci particular set of bits (as defined by the format file 598c2ecf20Sopenharmony_ci corresponding to the <term>) in the perf_event structure passed 608c2ecf20Sopenharmony_ci to the perf_open syscall. 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ci In the case of the last example, a value replacing "?" would 638c2ecf20Sopenharmony_ci need to be provided by the user selecting the particular event. 648c2ecf20Sopenharmony_ci This is referred to as "event parameterization". Event 658c2ecf20Sopenharmony_ci parameters have the format 'param=?'. 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ciWhat: /sys/bus/event_source/devices/<pmu>/events/<event>.unit 688c2ecf20Sopenharmony_ciDate: 2014/02/24 698c2ecf20Sopenharmony_ciContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 708c2ecf20Sopenharmony_ciDescription: Perf event units 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ci A string specifying the English plural numerical unit that <event> 738c2ecf20Sopenharmony_ci (once multiplied by <event>.scale) represents. 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci Example: 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci Joules 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ciWhat: /sys/bus/event_source/devices/<pmu>/events/<event>.scale 808c2ecf20Sopenharmony_ciDate: 2014/02/24 818c2ecf20Sopenharmony_ciContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 828c2ecf20Sopenharmony_ciDescription: Perf event scaling factors 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci A string representing a floating point value expressed in 858c2ecf20Sopenharmony_ci scientific notation to be multiplied by the event count 868c2ecf20Sopenharmony_ci recieved from the kernel to match the unit specified in the 878c2ecf20Sopenharmony_ci <event>.unit file. 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci Example: 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ci 2.3283064365386962890625e-10 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci This is provided to avoid performing floating point arithmetic 948c2ecf20Sopenharmony_ci in the kernel. 95