5 ms·
> Imagine you have a single core compilation process Who runs builds with a single core compilation process? Are we back in 1990? You are hard-pressed to find
by rumanator 7y ago
> Imagine you have a single core compilation process
Who runs builds with a single core compilation process? Are we back in 1990?
You are hard-pressed to find a CPU with a single core nowadays, even in the cheapest of consumer segments. Why are you fabricating such an unrealistic case?
- user5994461 7y agoThe linking phase for C and C++ software is basically linear. Nobody's figured out how to multi thread that since before 1990. It takes hours to build large software (Chrome/Firefox/Qt). By the way, one of the biggest improvements in software performance in the past decade comes from link time optimisations during build (LTO), that's all done during linking and it takes FOREVER.
- jcelerier 7y agogold has had threading support since its release in 2008. Likewise for lld, which is an order of magnitude faster than gold. From anecdotal experience of the code I am on right now, relinking a few hundred megabytes of .o's takes less than 2 seconds with lld on my 6900k.
- TazeTSchnitzel 7y ago> The linking phase for C and C++ software is basically linear. Depends how many targets you're building. If you have enough memory, you can link several libraries in parallel.
- rumanator 7y ago> The linking phase for C and C++ software is basically linear. Linking is also IO-bound, and already a solved problem in the sense that there are already plenty of solutions that render linking to be a non-issue. It's far from a decent CPU benchmark.
- Theodores 7y agoThe key phrase was 'for me'. That 'me' could be working on an existing code base that does a bit more than show a web page and can't be written in flavour of the month toolkits.
- rumanator 7y agoBuild processes that run on more than one job at a time is not a flavour of the month: it's the industry standard of the last 20 or 30 years.