Eu também não encontrei nenhum evento de hardware listado, até depois de usar alguns. Agora, mesmo depois de uma nova reinicialização, alguns estão listados:
doug@s15:~$ perf list hw
List of pre-defined events (to be used in -e):
branch-instructions OR branches [Hardware event]
branch-misses [Hardware event]
bus-cycles [Hardware event]
cache-misses [Hardware event]
cache-references [Hardware event]
cpu-cycles OR cycles [Hardware event]
instructions [Hardware event]
ref-cycles [Hardware event]
stalled-cycles-backend OR idle-cycles-backend [Hardware event]
stalled-cycles-frontend OR idle-cycles-frontend [Hardware event]
doug@s15:~$ perf list pmu
List of pre-defined events (to be used in -e):
branch-instructions OR cpu/branch-instructions/ [Kernel PMU event]
branch-misses OR cpu/branch-misses/ [Kernel PMU event]
bus-cycles OR cpu/bus-cycles/ [Kernel PMU event]
cache-misses OR cpu/cache-misses/ [Kernel PMU event]
cache-references OR cpu/cache-references/ [Kernel PMU event]
cpu-cycles OR cpu/cpu-cycles/ [Kernel PMU event]
instructions OR cpu/instructions/ [Kernel PMU event]
mem-loads OR cpu/mem-loads/ [Kernel PMU event]
mem-stores OR cpu/mem-stores/ [Kernel PMU event]
power/energy-cores/ [Kernel PMU event]
power/energy-gpu/ [Kernel PMU event]
power/energy-pkg/ [Kernel PMU event]
ref-cycles OR cpu/ref-cycles/ [Kernel PMU event]
stalled-cycles-backend OR cpu/stalled-cycles-backend/ [Kernel PMU event]
stalled-cycles-frontend OR cpu/stalled-cycles-frontend/ [Kernel PMU event]
uncore_cbox_0/clockticks/ [Kernel PMU event]
uncore_cbox_1/clockticks/ [Kernel PMU event]
uncore_cbox_2/clockticks/ [Kernel PMU event]
uncore_cbox_3/clockticks/ [Kernel PMU event]
uncore_imc/data_reads/ [Kernel PMU event]
uncore_imc/data_writes/ [Kernel PMU event]
Mais cedo eu fiz isso:
doug@s15:~$ sudo ~/bin/perf stat -a sleep 5
Performance counter stats for 'system wide':
39997.230896 task-clock (msec) # 7.998 CPUs utilized (100.00%)
396 context-switches # 0.010 K/sec (100.00%)
8 cpu-migrations # 0.000 K/sec (100.00%)
82 page-faults # 0.002 K/sec
359,328,178 cycles # 0.009 GHz (83.29%)
827,261,275 stalled-cycles-frontend # 230.22% frontend cycles idle (83.33%)
797,161,705 stalled-cycles-backend # 221.85% backend cycles idle (66.74%)
49,220,050 instructions # 0.14 insns per cycle
# 16.81 stalled cycles per insn (83.37%)
10,011,396 branches # 0.250 M/sec (83.37%)
1,800,790 branch-misses # 17.99% of all branches (83.29%)
5.000925953 seconds time elapsed
doug@s15:~$ sudo ~/bin/perf stat -e cycles,instructions,cache-references,cache-misses,bus-cycles -a sleep 5
Performance counter stats for 'system wide':
24,268,338 cycles (100.00%)
8,505,561 instructions # 0.35 insns per cycle (100.00%)
657,099 cache-references (100.00%)
73,174 cache-misses # 11.136 % of all cache refs (100.00%)
1,507,017 bus-cycles
5.001004407 seconds time elapsed
doug@s15:~$ sudo ~/bin/perf stat -e L1-dcache-loads,L1-dcache-load-misses,L1-dcache-stores sleep 5
Performance counter stats for 'sleep 5':
170,208 L1-dcache-loads
14,139 L1-dcache-load-misses # 8.31% of all L1-dcache hits
<not counted> L1-dcache-stores (0.00%)
5.000957676 seconds time elapsed
Eu não sei como se minha lista está completa, nem como obter a lista completa se não estiver.