diff options
author | Hongtao Yu <hoy@fb.com> | 2022-01-28 15:53:37 -0800 |
---|---|---|
committer | Hongtao Yu <hoy@fb.com> | 2022-02-08 08:33:23 -0800 |
commit | 34e131b0f253d9c2eda78378aaf77703bc2921f9 (patch) | |
tree | 31cddea4a6a29b453bbac7f8feaf16cc99aef155 /clang/lib/Frontend/InitPreprocessor.cpp | |
parent | e885b1137bcbbdd732bab02a4dd02a6222711815 (diff) | |
download | llvm-34e131b0f253d9c2eda78378aaf77703bc2921f9.zip llvm-34e131b0f253d9c2eda78378aaf77703bc2921f9.tar.gz llvm-34e131b0f253d9c2eda78378aaf77703bc2921f9.tar.bz2 |
[llvm-profgen] On-demand track optimized-away inlinees for preinliner.
Tracking optimized-away inlinees based on all probes in a binary is expansive in terms of memory usage I'm making the tracking on-demand based on profiled functions only. This saves about 10% memory overall for a medium-sized benchmark.
Before:
note: After parsePerfTraces
note: Thu Jan 27 18:42:09 2022
note: VM: 8.68 GB RSS: 8.39 GB
note: After computeSizeForProfiledFunctions
note: Thu Jan 27 18:42:41 2022
note: **VM: 10.63 GB RSS: 10.20 GB**
note: After generateProbeBasedProfile
note: Thu Jan 27 18:45:49 2022
note: VM: 25.00 GB RSS: 24.95 GB
note: After postProcessProfiles
note: Thu Jan 27 18:49:29 2022
note: VM: 26.34 GB RSS: 26.27 GB
After:
note: After parsePerfTraces
note: Fri Jan 28 12:04:49 2022
note: VM: 8.68 GB RSS: 7.65 GB
note: After computeSizeForProfiledFunctions
note: Fri Jan 28 12:05:26 2022
note: **VM: 8.68 GB RSS: 8.42 GB**
note: After generateProbeBasedProfile
note: Fri Jan 28 12:08:03 2022
note: VM: 22.93 GB RSS: 22.89 GB
note: After postProcessProfiles
note: Fri Jan 28 12:11:30 2022
note: VM: 24.27 GB RSS: 24.22 GB
This should be a no-diff change in terms of profile quality.
Reviewed By: wenlei
Differential Revision: https://reviews.llvm.org/D118515
Diffstat (limited to 'clang/lib/Frontend/InitPreprocessor.cpp')
0 files changed, 0 insertions, 0 deletions