aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python
diff options
context:
space:
mode:
authorFangrui Song <i@maskray.me>2023-10-22 16:50:03 -0700
committerGitHub <noreply@github.com>2023-10-22 16:50:03 -0700
commita24418375a707b7314e7687888dd02eaefca42cd (patch)
tree48c4a298b6efb4d4b6fdf56f3918151fea151b2f /lldb/source/Plugins/ScriptInterpreter/Python
parent8511ade505588473154906e903302659fd833b48 (diff)
downloadllvm-a24418375a707b7314e7687888dd02eaefca42cd.zip
llvm-a24418375a707b7314e7687888dd02eaefca42cd.tar.gz
llvm-a24418375a707b7314e7687888dd02eaefca42cd.tar.bz2
[CodeLayout] cache-directed sort: limit max chain size (#69039)
When linking an executable with a slightly larger executable, ld.lld --call-graph-profile-sort=cdsort can be very slow (see #68638). ``` 4.6% 20.7Mi .text.hot 3.5% 15.9Mi .text 3.4% 15.2Mi .text.unknown ``` Add cl option `cdsort-max-chain-size`, which is similar to `ext-tsp-max-chain-size`, and set it to 128, to improve performance. In `ld.lld @response.txt --threads=4 --call-graph-profile-sort=cdsort --time-trace" builds, the "Total Sort sections" time is measured as follows: * -mllvm -cdsort-max-chain-size=64: 1.321813 * -mllvm -cdsort-max-chain-size=128: 2.030425 * -mllvm -cdsort-max-chain-size=256: 2.927684 * -mllvm -cdsort-max-chain-size=512: 5.493106 * unlimited: 9 minutes The rest part takes 6.8s.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python')
0 files changed, 0 insertions, 0 deletions