linux/tools/perf
Ian Rogers a3248b5b54 perf jevents: Add metric DefaultShowEvents
Some Default group metrics require their events showing for
consistency with perf's previous behavior. Add a flag to indicate when
this is the case and use it in stat-display.

As events are coming from Default metrics remove that default hardware
and software events from perf stat.

Following this change the default perf stat output on an alderlake looks like:
```
$ perf stat -a -- sleep 1

 Performance counter stats for 'system wide':

            20,550      context-switches                 #      nan cs/sec  cs_per_second
             TopdownL1 (cpu_core)                 #      9.0 %  tma_bad_speculation
                                                  #     28.1 %  tma_frontend_bound
             TopdownL1 (cpu_core)                 #     29.2 %  tma_backend_bound
                                                  #     33.7 %  tma_retiring
             6,685      page-faults                      #      nan faults/sec  page_faults_per_second
       790,091,064      cpu_atom/cpu-cycles/
                                                  #      nan GHz  cycles_frequency       (49.83%)
     2,563,918,366      cpu_core/cpu-cycles/
                                                  #      nan GHz  cycles_frequency
                                                  #     12.3 %  tma_bad_speculation
                                                  #     14.5 %  tma_retiring             (50.20%)
                                                  #     33.8 %  tma_frontend_bound       (50.24%)
        76,390,322      cpu_atom/branches/               #      nan M/sec  branch_frequency     (60.20%)
     1,015,173,047      cpu_core/branches/               #      nan M/sec  branch_frequency
             1,325      cpu-migrations                   #      nan migrations/sec  migrations_per_second
                                                  #     39.3 %  tma_backend_bound        (60.17%)
              0.00 msec cpu-clock                        #    0.000 CPUs utilized
                                                  #      0.0 CPUs  CPUs_utilized
       554,347,072      cpu_atom/instructions/           #    0.64  insn per cycle
                                                  #      0.6 instructions  insn_per_cycle  (60.14%)
     5,228,931,991      cpu_core/instructions/           #    2.04  insn per cycle
                                                  #      2.0 instructions  insn_per_cycle
         4,308,874      cpu_atom/branch-misses/          #    5.65% of all branches
                                                  #      5.6 %  branch_miss_rate         (49.76%)
         9,890,606      cpu_core/branch-misses/          #    0.97% of all branches
                                                  #      1.0 %  branch_miss_rate

       1.005477803 seconds time elapsed
```

Signed-off-by: Ian Rogers <irogers@google.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
2025-11-11 16:48:35 -08:00
..
arch perf annotate: Invalidate register states for untracked instructions 2025-10-21 06:02:49 -07:00
bench - Simplify inline asm flag output operands now that the minimum compiler 2025-10-11 10:51:14 -07:00
check-header_ignore_hunks/lib perf tools: update expected diff for lib/list_sort.c 2024-11-05 17:12:33 -08:00
dlfilters perf tools: Simplify evsel__add_modifier() 2024-10-22 09:52:11 -07:00
Documentation perf c2c: Add annotation support to perf c2c report 2025-10-19 12:49:59 +09:00
include/perf perf dso: Move build_id to dso_id 2025-07-25 10:37:56 -07:00
jvmti perf: Fix libjvmti.c sign compare error 2025-06-09 22:12:08 -07:00
pmu-events perf jevents: Add metric DefaultShowEvents 2025-11-11 16:48:35 -08:00
python perf ilist: Add PMU information to metrics 2025-10-19 11:59:44 +09:00
scripts perf build: Disable thread safety analysis for perl header 2025-10-06 16:49:25 -03:00
tests perf test: Add test that command line period overrides sysfs/json values 2025-11-09 23:07:57 -08:00
trace tools headers: Sync uapi/linux/vhost.h with the kernel source 2025-08-18 13:49:26 -07:00
ui perf annotate: Fix Clang build by adding block in switch case 2025-10-23 14:28:58 -07:00
util perf jevents: Add metric DefaultShowEvents 2025-11-11 16:48:35 -08:00
.gitignore perf tools: Remove libtraceevent in .gitignore 2025-07-26 15:38:10 -07:00
Build perf build: Specify shellcheck should use bash 2025-06-30 09:43:06 -07:00
builtin-annotate.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
builtin-bench.c perf bench mem: Add mmap() workloads 2025-09-19 12:43:59 -03:00
builtin-buildid-cache.c perf symbol: Add blocking argument to filename__read_build_id 2025-08-25 15:07:18 -07:00
builtin-buildid-list.c perf machine: Explicitly pass in host perf_env 2025-07-25 10:37:57 -07:00
builtin-c2c.c perf c2c annotate: Start from the contention line 2025-10-19 12:50:07 +09:00
builtin-check.c perf check: Add libLLVM feature 2025-10-06 15:24:13 -03:00
builtin-config.c perf config: Add a function to set one variable in .perfconfig 2025-01-14 15:05:56 -03:00
builtin-daemon.c
builtin-data.c
builtin-diff.c perf sort: Use perf_env to set arch sort keys and header 2025-07-25 10:37:58 -07:00
builtin-evlist.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
builtin-ftrace.c perf: ftrace: add graph tracer options args/retval/retval-hex/retaddr 2025-07-22 17:47:22 -07:00
builtin-help.c perf tools: Remove dependency on libaudit 2025-01-10 10:59:42 -03:00
builtin-inject.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
builtin-kallsyms.c perf machine: Explicitly pass in host perf_env 2025-07-25 10:37:57 -07:00
builtin-kmem.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
builtin-kvm.c perf tools kvm: Use "cycles" to sample guest for "kvm top" on Intel 2025-10-02 15:31:55 -03:00
builtin-kwork.c perf tools kwork: Add missed memory allocation check and free 2025-10-02 15:30:30 -03:00
builtin-list.c perf print-events: Remove print_symbol_events 2025-10-15 23:59:11 +09:00
builtin-lock.c perf lock: Provide a host_env for session new 2025-09-12 17:53:03 -07:00
builtin-mem.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
builtin-probe.c perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
builtin-record.c perf record: Make sure to update build-ID cache 2025-11-06 17:29:16 -08:00
builtin-report.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
builtin-sched.c perf sched: Avoid union type punning undefined behavior 2025-10-01 11:22:04 -03:00
builtin-script.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
builtin-stat.c perf jevents: Add metric DefaultShowEvents 2025-11-11 16:48:35 -08:00
builtin-timechart.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
builtin-top.c perf top: Use evlist__new_default when no events specified 2025-10-15 23:59:11 +09:00
builtin-trace.c perf trace: Don't synthesize mmaps unless callchains are enabled 2025-10-19 11:32:30 +09:00
builtin-version.c perf check: Share the feature status printing routine with 'perf version' 2025-04-10 10:44:04 -03:00
builtin.h perf check: Allow showing a tip for opt-in features not built into perf 2025-04-10 10:44:42 -03:00
check-headers.sh tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
command-list.txt
CREDITS
design.txt
Makefile
Makefile.config perf build: Support build with clang 2025-10-06 16:49:25 -03:00
Makefile.perf perf jevents: Support copying the source json files to OUTPUT 2025-10-15 23:59:10 +09:00
MANIFEST perf tools: Fix arm64 source package build 2025-05-13 17:26:35 -03:00
perf-archive.sh tools/perf: Add --exclude-buildids option to perf archive command 2025-06-26 15:40:19 -07:00
perf-completion.sh
perf-iostat.sh
perf-read-vdso.c
perf-sys.h
perf.c perf env: Remove global perf_env 2025-07-25 10:37:58 -07:00
perf.h perf: Completely remove possibility to override MAX_NR_CPUS 2025-09-12 10:52:22 -03:00