[PATCH] D71261: [ThinLTO] upgrade IR symtab in parallel ahead of time
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun May 17 11:11:11 PDT 2020
MaskRay added a comment.
Just to confirm. @ychen Do you have lots of bitcode files with different versions which require upgrade in LTO?
I tested with an internal program and there seems to be 1% improvement on time, minor cost on memory usage. I need to collect a bit more applications for benchmark.
Loading LazyObjFile and ArchiveFile eagerly may potentially accelerate "Parse input files". (Our Bazel builds use very file archives (we don't use `--nostart_end_lib`))
There is a proposal in 2019-04 http://lists.llvm.org/pipermail/llvm-dev/2019-April/131902.html making the scheme more generic.
@ruiu Is this proposal unfinished yet? I think we can at least add an option to opt in that mode (parsing LazyObjFile (and probably ArchiveFile) eagerly). This bitcode parsing may need a dependency on that mode.
================
Comment at: lld/ELF/InputFiles.cpp:510
+ driver->addFile(path->first, /*withLOption=*/path->second);
else
error(toString(f) +
----------------
Why is the change?
================
Comment at: lld/ELF/InputFiles.cpp:1527
+ if (config->dependentLibraries && irSymTabCache) {
+ std::vector<std::string> filesToUpgrade;
----------------
This logic requires a test.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71261/new/
https://reviews.llvm.org/D71261
More information about the llvm-commits
mailing list