perf list: Add explanation about raw hardware event descriptors
Arnaldo Carvalho de Melo [Wed, 5 May 2010 14:20:05 +0000 (11:20 -0300)]
Using explanation given by Ingo Molnar in the oprofile mailing list.

Suggested-by: Nick Black <>
Cc: Frédéric Weisbecker <>
Cc: Mike Galbraith <>
Cc: Nick Black <>
Cc: Paul Mackerras <>
Cc: Peter Zijlstra <>
Cc: Tom Zanussi <>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <>


index 8290b94..ad765e0 100644 (file)
@@ -15,6 +15,24 @@ DESCRIPTION
 This command displays the symbolic event types which can be selected in the
 various perf commands with the -e option.
+Even when an event is not available in a symbolic form within perf right now,
+it can be encoded as <UMASK VALUE><EVENT NUM>, for instance, if the Intel docs
+describe an event as:
+  Event  Umask  Event Mask
+  Num.   Value  Mnemonic    Description                        Comment
+  A8H      01H  LSD.UOPS    Counts the number of micro-ops     Use cmask=1 and
+                            delivered by loop stream detector  invert to count
+                                                               cycles
+raw encoding of 0x1A8 can be used:
+ perf stat -e r1a8 -a sleep 1
+ perf record -e r1a8 ...
index 600d327..bc8b7e6 100644 (file)
@@ -936,7 +936,7 @@ void print_events(void)
        printf("  %-42s [%s]\n",
-               "rNNN", event_type_descriptors[PERF_TYPE_RAW]);
+               "rNNN (NNN=<UMASK VALUE><EVENT NUM>)", event_type_descriptors[PERF_TYPE_RAW]);
        printf("  %-42s [%s]\n",