William Cohen fbc2844e84 perf vendor events: Use more flexible pattern matching for CPU identification for mapfile.csv
The powerpc cpuid information includes chip revision information.
Changes between chip revisions are usually minor bug fixes and usually
do not affect the operation of the performance monitoring hardware.

The original mapfile.csv matching requires enumerating every possible
cpuid string.  When a new minor chip revision is produced a new entry
has to be added to the mapfile.csv and the code recompiled to allow perf
to have the implementation specific perf events for this new minor
revision.  For users of various distibutions of Linux having to wait for
a new release of the kernel's perf tool to be built with these trivial
patches is inconvenient.

Using regular expressions rather than exactly string matching of the
entire cpuid string allows developers to write mapfile.csv files that do
not require patches and recompiles for each of these minor version
changes.  If special cases need to be made for some particular versions,
they can be placed earlier in the mapfile.csv file before the more
general matches.

Signed-off-by: William Cohen <wcohen@redhat.com>
Tested-by: Ravi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Shriya <shriyak@linux.vnet.ibm.com>
Link: http://lkml.kernel.org/r/20171204145728.16792-1-wcohen@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2017-12-05 15:43:55 -03:00

1.3 KiB

1Family-modelVersionFilenameEventType
2GenuineIntel-6-56v5broadwelldecore
3GenuineIntel-6-3Dv17broadwellcore
4GenuineIntel-6-47v17broadwellcore
5GenuineIntel-6-4Fv10broadwellxcore
6GenuineIntel-6-1Cv4bonnellcore
7GenuineIntel-6-26v4bonnellcore
8GenuineIntel-6-27v4bonnellcore
9GenuineIntel-6-36v4bonnellcore
10GenuineIntel-6-35v4bonnellcore
11GenuineIntel-6-5Cv8goldmontcore
12GenuineIntel-6-7Av1goldmontpluscore
13GenuineIntel-6-3Cv24haswellcore
14GenuineIntel-6-45v24haswellcore
15GenuineIntel-6-46v24haswellcore
16GenuineIntel-6-3Fv17haswellxcore
17GenuineIntel-6-3Av18ivybridgecore
18GenuineIntel-6-3Ev19ivytowncore
19GenuineIntel-6-2Dv20jaketowncore
20GenuineIntel-6-57v9knightslandingcore
21GenuineIntel-6-85v9knightslandingcore
22GenuineIntel-6-1Ev2nehalemepcore
23GenuineIntel-6-1Fv2nehalemepcore
24GenuineIntel-6-1Av2nehalemepcore
25GenuineIntel-6-2Ev2nehalemexcore
26GenuineIntel-6-[4589]Ev24skylakecore
27GenuineIntel-6-37v13silvermontcore
28GenuineIntel-6-4Dv13silvermontcore
29GenuineIntel-6-4Cv13silvermontcore
30GenuineIntel-6-2Av15sandybridgecore
31GenuineIntel-6-2Cv2westmereep-dpcore
32GenuineIntel-6-2Cv2westmereep-dpcore
33GenuineIntel-6-25v2westmereep-spcore
34GenuineIntel-6-2Fv2westmereexcore
35GenuineIntel-6-55v1skylakexcore