[PATCH] D80202: [ASTMatchers] Performance optimization for memoization
Nathan James via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Jun 5 08:18:59 PDT 2020
njames93 added a comment.
I decided to do some more stringent benchmarking, just focusing on the matching, not the boilerplate of running clang-tidy.
=================================BeforePatch===================================
Matcher Timings: 116.0756 user 29.1397 system 145.2154 process 145.2168 wall
Matcher Timings: 117.7205 user 29.2475 system 146.9681 process 146.9158 wall
Matcher Timings: 116.8313 user 29.5170 system 146.3483 process 146.2655 wall
Matcher Timings: 117.9491 user 29.0969 system 147.0459 process 146.9678 wall
Matcher Timings: 117.6309 user 29.1864 system 146.8173 process 146.7687 wall
user: 117.2+-0.753
system: 29.24+-0.166
process: 146.5+-0.760
==================================AfterPatch===================================
Matcher Timings: 110.5497 user 28.3316 system 138.8813 process 138.7960 wall
Matcher Timings: 112.5151 user 28.8616 system 141.3767 process 141.3003 wall
Matcher Timings: 116.1578 user 28.9472 system 145.1049 process 145.0785 wall
Matcher Timings: 107.1089 user 27.2752 system 134.3841 process 134.3459 wall
Matcher Timings: 105.9242 user 27.0338 system 132.9580 process 132.9010 wall
user: 110.4+-4.159
system: 28.09+-0.890
process: 138.6+-4.979
This is showing ~5% improvement when running every clang-tidy check on a translation unit (Specifically `clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp`)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D80202/new/
https://reviews.llvm.org/D80202
More information about the cfe-commits
mailing list