[exegesis] Analysis: filtering for benchmark results
authorRoman Lebedev <lebedev.ri@gmail.com>
Wed, 4 Jan 2023 18:13:48 +0000 (21:13 +0300)
committerRoman Lebedev <lebedev.ri@gmail.com>
Wed, 4 Jan 2023 18:16:11 +0000 (21:16 +0300)
commit6a67b633b94fcc470628d844f5eaf0ee13c4e884
tree3634f6532fb814d6f85b12668ccc9f3ee17fdfbe
parente4b260efb2c8dca3035597d30ffd066ffb77daea
[exegesis] Analysis: filtering for benchmark results

By default, all benchmark results are analysed, but sometimes it may be useful
to only look at those that to not involve memory, or vice versa. This option
allows to either keep all benchmarks, or filter out (ignore) either all the
ones that do involve memory (involve instructions that may read or write to
memory), or the opposite, to only keep such benchmarks.

Personally, so far i have found the benchmarks that do involve memory
to have dubious results. But the ones that do not involve memory,
are generally actionable. So i would like to have a toggle to declutter results.

Reviewed By: courbet

Differential Revision: https://reviews.llvm.org/D140734
llvm/docs/CommandGuide/llvm-exegesis.rst
llvm/test/tools/llvm-exegesis/X86/analysis-filter.test [new file with mode: 0644]
llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
llvm/tools/llvm-exegesis/llvm-exegesis.cpp