diff options
Diffstat (limited to 'tools/perf')
-rw-r--r-- | tools/perf/builtin-record.c | 4 | ||||
-rw-r--r-- | tools/perf/builtin-stat.c | 31 | ||||
-rw-r--r-- | tools/perf/builtin-top.c | 4 | ||||
-rw-r--r-- | tools/perf/design.txt | 28 | ||||
-rw-r--r-- | tools/perf/util/parse-events.c | 44 |
5 files changed, 56 insertions, 55 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index 84cd336ae79b..29259e74dcfa 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c | |||
@@ -378,12 +378,12 @@ try_again: | |||
378 | * is always available even if no PMU support: | 378 | * is always available even if no PMU support: |
379 | */ | 379 | */ |
380 | if (attr->type == PERF_TYPE_HARDWARE | 380 | if (attr->type == PERF_TYPE_HARDWARE |
381 | && attr->config == PERF_COUNT_CPU_CYCLES) { | 381 | && attr->config == PERF_COUNT_HW_CPU_CYCLES) { |
382 | 382 | ||
383 | if (verbose) | 383 | if (verbose) |
384 | warning(" ... trying to fall back to cpu-clock-ticks\n"); | 384 | warning(" ... trying to fall back to cpu-clock-ticks\n"); |
385 | attr->type = PERF_TYPE_SOFTWARE; | 385 | attr->type = PERF_TYPE_SOFTWARE; |
386 | attr->config = PERF_COUNT_CPU_CLOCK; | 386 | attr->config = PERF_COUNT_SW_CPU_CLOCK; |
387 | goto try_again; | 387 | goto try_again; |
388 | } | 388 | } |
389 | printf("\n"); | 389 | printf("\n"); |
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 6404906924fa..c43e4a97dc42 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c | |||
@@ -46,15 +46,16 @@ | |||
46 | 46 | ||
47 | static struct perf_counter_attr default_attrs[MAX_COUNTERS] = { | 47 | static struct perf_counter_attr default_attrs[MAX_COUNTERS] = { |
48 | 48 | ||
49 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_TASK_CLOCK }, | 49 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_TASK_CLOCK }, |
50 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_CONTEXT_SWITCHES }, | 50 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_CONTEXT_SWITCHES}, |
51 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_CPU_MIGRATIONS }, | 51 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_CPU_MIGRATIONS }, |
52 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_PAGE_FAULTS }, | 52 | { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_PAGE_FAULTS }, |
53 | 53 | ||
54 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_CPU_CYCLES }, | 54 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_HW_CPU_CYCLES }, |
55 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_INSTRUCTIONS }, | 55 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_HW_INSTRUCTIONS }, |
56 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_CACHE_REFERENCES }, | 56 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_HW_CACHE_REFERENCES}, |
57 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_CACHE_MISSES }, | 57 | { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_HW_CACHE_MISSES }, |
58 | |||
58 | }; | 59 | }; |
59 | 60 | ||
60 | static int system_wide = 0; | 61 | static int system_wide = 0; |
@@ -120,10 +121,10 @@ static inline int nsec_counter(int counter) | |||
120 | if (attrs[counter].type != PERF_TYPE_SOFTWARE) | 121 | if (attrs[counter].type != PERF_TYPE_SOFTWARE) |
121 | return 0; | 122 | return 0; |
122 | 123 | ||
123 | if (attrs[counter].config == PERF_COUNT_CPU_CLOCK) | 124 | if (attrs[counter].config == PERF_COUNT_SW_CPU_CLOCK) |
124 | return 1; | 125 | return 1; |
125 | 126 | ||
126 | if (attrs[counter].config == PERF_COUNT_TASK_CLOCK) | 127 | if (attrs[counter].config == PERF_COUNT_SW_TASK_CLOCK) |
127 | return 1; | 128 | return 1; |
128 | 129 | ||
129 | return 0; | 130 | return 0; |
@@ -176,10 +177,10 @@ static void read_counter(int counter) | |||
176 | * Save the full runtime - to allow normalization during printout: | 177 | * Save the full runtime - to allow normalization during printout: |
177 | */ | 178 | */ |
178 | if (attrs[counter].type == PERF_TYPE_SOFTWARE && | 179 | if (attrs[counter].type == PERF_TYPE_SOFTWARE && |
179 | attrs[counter].config == PERF_COUNT_TASK_CLOCK) | 180 | attrs[counter].config == PERF_COUNT_SW_TASK_CLOCK) |
180 | runtime_nsecs = count[0]; | 181 | runtime_nsecs = count[0]; |
181 | if (attrs[counter].type == PERF_TYPE_HARDWARE && | 182 | if (attrs[counter].type == PERF_TYPE_HARDWARE && |
182 | attrs[counter].config == PERF_COUNT_CPU_CYCLES) | 183 | attrs[counter].config == PERF_COUNT_HW_CPU_CYCLES) |
183 | runtime_cycles = count[0]; | 184 | runtime_cycles = count[0]; |
184 | } | 185 | } |
185 | 186 | ||
@@ -206,7 +207,7 @@ static void print_counter(int counter) | |||
206 | fprintf(stderr, " %14.6f %-20s", | 207 | fprintf(stderr, " %14.6f %-20s", |
207 | msecs, event_name(counter)); | 208 | msecs, event_name(counter)); |
208 | if (attrs[counter].type == PERF_TYPE_SOFTWARE && | 209 | if (attrs[counter].type == PERF_TYPE_SOFTWARE && |
209 | attrs[counter].config == PERF_COUNT_TASK_CLOCK) { | 210 | attrs[counter].config == PERF_COUNT_SW_TASK_CLOCK) { |
210 | 211 | ||
211 | if (walltime_nsecs) | 212 | if (walltime_nsecs) |
212 | fprintf(stderr, " # %11.3f CPU utilization factor", | 213 | fprintf(stderr, " # %11.3f CPU utilization factor", |
@@ -220,7 +221,7 @@ static void print_counter(int counter) | |||
220 | (double)count[0]/runtime_nsecs*1000.0); | 221 | (double)count[0]/runtime_nsecs*1000.0); |
221 | if (runtime_cycles && | 222 | if (runtime_cycles && |
222 | attrs[counter].type == PERF_TYPE_HARDWARE && | 223 | attrs[counter].type == PERF_TYPE_HARDWARE && |
223 | attrs[counter].config == PERF_COUNT_INSTRUCTIONS) { | 224 | attrs[counter].config == PERF_COUNT_HW_INSTRUCTIONS) { |
224 | 225 | ||
225 | fprintf(stderr, " # %1.3f per cycle", | 226 | fprintf(stderr, " # %1.3f per cycle", |
226 | (double)count[0] / (double)runtime_cycles); | 227 | (double)count[0] / (double)runtime_cycles); |
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c index 309dbc76ec88..fe338d3c5d7e 100644 --- a/tools/perf/builtin-top.c +++ b/tools/perf/builtin-top.c | |||
@@ -562,13 +562,13 @@ try_again: | |||
562 | * is always available even if no PMU support: | 562 | * is always available even if no PMU support: |
563 | */ | 563 | */ |
564 | if (attr->type == PERF_TYPE_HARDWARE | 564 | if (attr->type == PERF_TYPE_HARDWARE |
565 | && attr->config == PERF_COUNT_CPU_CYCLES) { | 565 | && attr->config == PERF_COUNT_HW_CPU_CYCLES) { |
566 | 566 | ||
567 | if (verbose) | 567 | if (verbose) |
568 | warning(" ... trying to fall back to cpu-clock-ticks\n"); | 568 | warning(" ... trying to fall back to cpu-clock-ticks\n"); |
569 | 569 | ||
570 | attr->type = PERF_TYPE_SOFTWARE; | 570 | attr->type = PERF_TYPE_SOFTWARE; |
571 | attr->config = PERF_COUNT_CPU_CLOCK; | 571 | attr->config = PERF_COUNT_SW_CPU_CLOCK; |
572 | goto try_again; | 572 | goto try_again; |
573 | } | 573 | } |
574 | printf("\n"); | 574 | printf("\n"); |
diff --git a/tools/perf/design.txt b/tools/perf/design.txt index d3250763dc92..860e116d979c 100644 --- a/tools/perf/design.txt +++ b/tools/perf/design.txt | |||
@@ -99,13 +99,13 @@ enum hw_event_ids { | |||
99 | /* | 99 | /* |
100 | * Common hardware events, generalized by the kernel: | 100 | * Common hardware events, generalized by the kernel: |
101 | */ | 101 | */ |
102 | PERF_COUNT_CPU_CYCLES = 0, | 102 | PERF_COUNT_HW_CPU_CYCLES = 0, |
103 | PERF_COUNT_INSTRUCTIONS = 1, | 103 | PERF_COUNT_HW_INSTRUCTIONS = 1, |
104 | PERF_COUNT_CACHE_REFERENCES = 2, | 104 | PERF_COUNT_HW_CACHE_REFERENCES = 2, |
105 | PERF_COUNT_CACHE_MISSES = 3, | 105 | PERF_COUNT_HW_CACHE_MISSES = 3, |
106 | PERF_COUNT_BRANCH_INSTRUCTIONS = 4, | 106 | PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 4, |
107 | PERF_COUNT_BRANCH_MISSES = 5, | 107 | PERF_COUNT_HW_BRANCH_MISSES = 5, |
108 | PERF_COUNT_BUS_CYCLES = 6, | 108 | PERF_COUNT_HW_BUS_CYCLES = 6, |
109 | }; | 109 | }; |
110 | 110 | ||
111 | These are standardized types of events that work relatively uniformly | 111 | These are standardized types of events that work relatively uniformly |
@@ -130,13 +130,13 @@ software events, selected by 'event_id': | |||
130 | * well): | 130 | * well): |
131 | */ | 131 | */ |
132 | enum sw_event_ids { | 132 | enum sw_event_ids { |
133 | PERF_COUNT_CPU_CLOCK = 0, | 133 | PERF_COUNT_SW_CPU_CLOCK = 0, |
134 | PERF_COUNT_TASK_CLOCK = 1, | 134 | PERF_COUNT_SW_TASK_CLOCK = 1, |
135 | PERF_COUNT_PAGE_FAULTS = 2, | 135 | PERF_COUNT_SW_PAGE_FAULTS = 2, |
136 | PERF_COUNT_CONTEXT_SWITCHES = 3, | 136 | PERF_COUNT_SW_CONTEXT_SWITCHES = 3, |
137 | PERF_COUNT_CPU_MIGRATIONS = 4, | 137 | PERF_COUNT_SW_CPU_MIGRATIONS = 4, |
138 | PERF_COUNT_PAGE_FAULTS_MIN = 5, | 138 | PERF_COUNT_SW_PAGE_FAULTS_MIN = 5, |
139 | PERF_COUNT_PAGE_FAULTS_MAJ = 6, | 139 | PERF_COUNT_SW_PAGE_FAULTS_MAJ = 6, |
140 | }; | 140 | }; |
141 | 141 | ||
142 | Counters of the type PERF_TYPE_TRACEPOINT are available when the ftrace event | 142 | Counters of the type PERF_TYPE_TRACEPOINT are available when the ftrace event |
diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index f18a9a006e1b..9d5f1ca50e6f 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c | |||
@@ -22,26 +22,26 @@ struct event_symbol { | |||
22 | #define CR(x, y) .type = PERF_TYPE_##x, .config = y | 22 | #define CR(x, y) .type = PERF_TYPE_##x, .config = y |
23 | 23 | ||
24 | static struct event_symbol event_symbols[] = { | 24 | static struct event_symbol event_symbols[] = { |
25 | { C(HARDWARE, CPU_CYCLES), "cpu-cycles", }, | 25 | { C(HARDWARE, HW_CPU_CYCLES), "cpu-cycles", }, |
26 | { C(HARDWARE, CPU_CYCLES), "cycles", }, | 26 | { C(HARDWARE, HW_CPU_CYCLES), "cycles", }, |
27 | { C(HARDWARE, INSTRUCTIONS), "instructions", }, | 27 | { C(HARDWARE, HW_INSTRUCTIONS), "instructions", }, |
28 | { C(HARDWARE, CACHE_REFERENCES), "cache-references", }, | 28 | { C(HARDWARE, HW_CACHE_REFERENCES), "cache-references", }, |
29 | { C(HARDWARE, CACHE_MISSES), "cache-misses", }, | 29 | { C(HARDWARE, HW_CACHE_MISSES), "cache-misses", }, |
30 | { C(HARDWARE, BRANCH_INSTRUCTIONS), "branch-instructions", }, | 30 | { C(HARDWARE, HW_BRANCH_INSTRUCTIONS),"branch-instructions", }, |
31 | { C(HARDWARE, BRANCH_INSTRUCTIONS), "branches", }, | 31 | { C(HARDWARE, HW_BRANCH_INSTRUCTIONS),"branches", }, |
32 | { C(HARDWARE, BRANCH_MISSES), "branch-misses", }, | 32 | { C(HARDWARE, HW_BRANCH_MISSES), "branch-misses", }, |
33 | { C(HARDWARE, BUS_CYCLES), "bus-cycles", }, | 33 | { C(HARDWARE, HW_BUS_CYCLES), "bus-cycles", }, |
34 | 34 | ||
35 | { C(SOFTWARE, CPU_CLOCK), "cpu-clock", }, | 35 | { C(SOFTWARE, SW_CPU_CLOCK), "cpu-clock", }, |
36 | { C(SOFTWARE, TASK_CLOCK), "task-clock", }, | 36 | { C(SOFTWARE, SW_TASK_CLOCK), "task-clock", }, |
37 | { C(SOFTWARE, PAGE_FAULTS), "page-faults", }, | 37 | { C(SOFTWARE, SW_PAGE_FAULTS), "page-faults", }, |
38 | { C(SOFTWARE, PAGE_FAULTS), "faults", }, | 38 | { C(SOFTWARE, SW_PAGE_FAULTS), "faults", }, |
39 | { C(SOFTWARE, PAGE_FAULTS_MIN), "minor-faults", }, | 39 | { C(SOFTWARE, SW_PAGE_FAULTS_MIN), "minor-faults", }, |
40 | { C(SOFTWARE, PAGE_FAULTS_MAJ), "major-faults", }, | 40 | { C(SOFTWARE, SW_PAGE_FAULTS_MAJ), "major-faults", }, |
41 | { C(SOFTWARE, CONTEXT_SWITCHES), "context-switches", }, | 41 | { C(SOFTWARE, SW_CONTEXT_SWITCHES), "context-switches", }, |
42 | { C(SOFTWARE, CONTEXT_SWITCHES), "cs", }, | 42 | { C(SOFTWARE, SW_CONTEXT_SWITCHES), "cs", }, |
43 | { C(SOFTWARE, CPU_MIGRATIONS), "cpu-migrations", }, | 43 | { C(SOFTWARE, SW_CPU_MIGRATIONS), "cpu-migrations", }, |
44 | { C(SOFTWARE, CPU_MIGRATIONS), "migrations", }, | 44 | { C(SOFTWARE, SW_CPU_MIGRATIONS), "migrations", }, |
45 | }; | 45 | }; |
46 | 46 | ||
47 | #define __PERF_COUNTER_FIELD(config, name) \ | 47 | #define __PERF_COUNTER_FIELD(config, name) \ |
@@ -107,7 +107,7 @@ char *event_name(int counter) | |||
107 | 107 | ||
108 | switch (type) { | 108 | switch (type) { |
109 | case PERF_TYPE_HARDWARE: | 109 | case PERF_TYPE_HARDWARE: |
110 | if (config < PERF_HW_EVENTS_MAX) | 110 | if (config < PERF_COUNT_HW_MAX) |
111 | return hw_event_names[config]; | 111 | return hw_event_names[config]; |
112 | return "unknown-hardware"; | 112 | return "unknown-hardware"; |
113 | 113 | ||
@@ -136,7 +136,7 @@ char *event_name(int counter) | |||
136 | } | 136 | } |
137 | 137 | ||
138 | case PERF_TYPE_SOFTWARE: | 138 | case PERF_TYPE_SOFTWARE: |
139 | if (config < PERF_SW_EVENTS_MAX) | 139 | if (config < PERF_COUNT_SW_MAX) |
140 | return sw_event_names[config]; | 140 | return sw_event_names[config]; |
141 | return "unknown-software"; | 141 | return "unknown-software"; |
142 | 142 | ||