[llvm] [BOLT][NFC] Store FILE symbols in a vector (PR #89088)
Amir Ayupov via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 17 15:10:46 PDT 2024
aaupov wrote:
> > For reference, in one of our medium-sized test binaries we have:
>
> Can we try on large binaries and try to have an upper bound on the size? I am not against this I just want to make sure we don't regress time dramatically.
For one large prod binary, we have the following:
- 2356369 local symbols,
- 1327085 local function symbols,
- 27784 file symbols.
The space tradeoff becomes:
- unordered map: 16b key + 16b value + 8b hash, times # of local symbols => ~90Mb of logical storage
- vector: 8b Symbol data + assuming the memorization of FileName (8b) => ~0.5Mb of logical storage
>
> > The switch to storing FILE symbols is a prerequisite for using the symbol table information for split fragment matching
>
> Thanks for the context. Feel free to add more motivation to your NFC patches/commits, in particular if they're in preparation for something bigger.
Done.
https://github.com/llvm/llvm-project/pull/89088
More information about the llvm-commits
mailing list