3 ms·
Google has very large applications, but also they are using static linking: imagine that you statically link all the possible dependencies in a single binary fo
by Joky 7y ago
Google has very large applications, but also they are using static linking: imagine that you statically link all the possible dependencies in a single binary for each application.
300MB is not considered a large binary at Google actually, I don't know what is public but you may look at Table 2 in this publication for instance: https://www.researchgate.net/publication/314105281_ThinLTO_Scalable_and_incremental_LTO https://www.researchgate.net/publication/314105281_ThinLTO_S...
I repro here some data, there is a bit more in the paper:
Clang 1.9k Files, 217MB (-g0), 3554MB (-g)
Chromium 17.8k Files 706MB (-g0), 7544MB (-g)
Ad Delivery 13.8k Files 1073MB (-g0), 7469MB (-g)
(this is the number of object file that are participating in the link).
- saagarjha 7y ago> they are using static linking Ah, that would probably be it.
- mwcampbell 7y agoIs Google's rationale for using static linking at this massive scale published anywhere?
- jlokier 7y agoI don't know Google's rationale, but static linked libraries usually run a little faster than dynamic linked ones.