diff options
| -rw-r--r-- | tools/perf/Documentation/perf-list.txt | 19 | ||||
| -rw-r--r-- | tools/perf/util/parse-events.c | 3 |
2 files changed, 18 insertions, 4 deletions
diff --git a/tools/perf/Documentation/perf-list.txt b/tools/perf/Documentation/perf-list.txt index ad765e0b8860..43e3dd284b90 100644 --- a/tools/perf/Documentation/perf-list.txt +++ b/tools/perf/Documentation/perf-list.txt | |||
| @@ -18,8 +18,16 @@ various perf commands with the -e option. | |||
| 18 | RAW HARDWARE EVENT DESCRIPTOR | 18 | RAW HARDWARE EVENT DESCRIPTOR |
| 19 | ----------------------------- | 19 | ----------------------------- |
| 20 | Even when an event is not available in a symbolic form within perf right now, | 20 | Even when an event is not available in a symbolic form within perf right now, |
| 21 | it can be encoded as <UMASK VALUE><EVENT NUM>, for instance, if the Intel docs | 21 | it can be encoded in a per processor specific way. |
| 22 | describe an event as: | 22 | |
| 23 | For instance For x86 CPUs NNN represents the raw register encoding with the | ||
| 24 | layout of IA32_PERFEVTSELx MSRs (see [Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 3B: System Programming Guide] Figure 30-1 Layout | ||
| 25 | of IA32_PERFEVTSELx MSRs) or AMD's PerfEvtSeln (see [AMD64 Architecture Programmer’s Manual Volume 2: System Programming], Page 344, | ||
| 26 | Figure 13-7 Performance Event-Select Register (PerfEvtSeln)). | ||
| 27 | |||
| 28 | Example: | ||
| 29 | |||
| 30 | If the Intel docs for a QM720 Core i7 describe an event as: | ||
| 23 | 31 | ||
| 24 | Event Umask Event Mask | 32 | Event Umask Event Mask |
| 25 | Num. Value Mnemonic Description Comment | 33 | Num. Value Mnemonic Description Comment |
| @@ -33,6 +41,9 @@ raw encoding of 0x1A8 can be used: | |||
| 33 | perf stat -e r1a8 -a sleep 1 | 41 | perf stat -e r1a8 -a sleep 1 |
| 34 | perf record -e r1a8 ... | 42 | perf record -e r1a8 ... |
| 35 | 43 | ||
| 44 | You should refer to the processor specific documentation for getting these | ||
| 45 | details. Some of them are referenced in the SEE ALSO section below. | ||
| 46 | |||
| 36 | OPTIONS | 47 | OPTIONS |
| 37 | ------- | 48 | ------- |
| 38 | None | 49 | None |
| @@ -40,4 +51,6 @@ None | |||
| 40 | SEE ALSO | 51 | SEE ALSO |
| 41 | -------- | 52 | -------- |
| 42 | linkperf:perf-stat[1], linkperf:perf-top[1], | 53 | linkperf:perf-stat[1], linkperf:perf-top[1], |
| 43 | linkperf:perf-record[1] | 54 | linkperf:perf-record[1], |
| 55 | http://www.intel.com/Assets/PDF/manual/253669.pdf[Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 3B: System Programming Guide], | ||
| 56 | http://support.amd.com/us/Processor_TechDocs/24593.pdf[AMD64 Architecture Programmer’s Manual Volume 2: System Programming] | ||
diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index bc8b7e614207..7b24b5dee8b3 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c | |||
| @@ -936,7 +936,8 @@ void print_events(void) | |||
| 936 | 936 | ||
| 937 | printf("\n"); | 937 | printf("\n"); |
| 938 | printf(" %-42s [%s]\n", | 938 | printf(" %-42s [%s]\n", |
| 939 | "rNNN (NNN=<UMASK VALUE><EVENT NUM>)", event_type_descriptors[PERF_TYPE_RAW]); | 939 | "rNNN (see 'perf list --help' on how to encode it)", |
| 940 | event_type_descriptors[PERF_TYPE_RAW]); | ||
| 940 | printf("\n"); | 941 | printf("\n"); |
| 941 | 942 | ||
| 942 | printf(" %-42s [%s]\n", | 943 | printf(" %-42s [%s]\n", |
