diff options
author | Teresa Johnson <tejohnson@google.com> | 2025-05-09 15:56:54 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-09 15:56:54 -0700 |
commit | 8836d68a0d5cac03b975057417936fe18cb9ccb1 (patch) | |
tree | 3b28876d6a60fa72130f1bec67d9856b43e2e4ee /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | 7517a1bb486f397d45a776e127445596e00c55eb (diff) | |
download | llvm-8836d68a0d5cac03b975057417936fe18cb9ccb1.zip llvm-8836d68a0d5cac03b975057417936fe18cb9ccb1.tar.gz llvm-8836d68a0d5cac03b975057417936fe18cb9ccb1.tar.bz2 |
[MemProf] Optionally discard small non-cold contexts (#139113)
Adds a new option -memprof-callsite-cold-threshold that allows
specifying a percent that will cause non-cold contexts to be discarded
if the percent cold bytes at a callsite including that context exceeds
the given threshold. Default is 100% (no discarding).
This reduces the amount of cloning needed to expose cold allocation
contexts when parts of the context are dominantly cold.
This motivated the change in PR138792, since discarding a context might
require a different decision about which not-cold contexts must be kept
to expose cloning requirements, so we need to determine that on the fly.
Additionally, this required a change to include the context size
information in the alloc trie in more cases, so we now guard the
inclusion of this information in the generated metadata on the option
values.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions