Post

@lefticus Depends, does the machine have a souped up Ryzen 9 CPU with 64GiB of RAM? Or is it your college roommate's 2015 MacBook Pro with a barely working screen? :)
English

@lefticus 3 seconds for multiple 100Ks of LOC
Ryan Fleury@rfleury
Left: From-scratch debug build, launching target, and stepping with RADDBG. Right: Launching target & stepping with Visual Studio 2022.
English

@lefticus would've needed a shorter interval to select 🤷
English

@lefticus I find it mildly worrying that "<10 minutes" was your minimum
English

@lefticus Why are there no sub-minute options? „<1 second“, „<30 seconds“, „too long“, „way too long“
English

@lefticus I do everything in my power to keep our compile time below 10 seconds. Removing templates and other cpp nonsense, unity builds etc. I think it could be done < 2 secs
English

@lefticus Typically, my projects take less than a minute to compile. This is because I usually use delphi or freepascal whenever I can. Or, unless c or c++ is the only logical choice. Nothing against c languages, I just prefer pascal.
English

@lefticus 0.6 seconds debug, 10 seconds full release optimizations
English

@lefticus 2-2.5 sec 100k loc C codebase, debug build
12sec release build
English

@lefticus This is why modern C++ is hated: that it takes so long to compile that 10 min is the best one can hope for.
English

@lefticus All of LLVM (clang, lldb, lld, mlir, etc.):
* 1 hour 8 minutes on my laptop (16 GB RAM, some i7)
* 25 minutes on my first build server (256 GB RAM, 2 Xeon E-somethings)
* 4 minutes on my second build server (512 GB RAM, 2 Epycs second from top-of-the-line)
English

@lefticus How badly the project has to be architectured to take more than 5 mins on normal HW (company issued Lenovo laptop)? I cannot fathom this 😨 so you make some changes that require full rebuild and then go eat lunch? And what about testing the code? insane waste of programmers time
English

@lefticus When I was working on Minecraft, it was around the 20 minute mark, if I remember correctly.
A lot of people used something I thought was a terrible hack that combined all translation units into one. It did speed up builds though, by quite a lot.
English

@lefticus Rust:
1 minute to download and compile dependencies
5 minutes to compile the service itself (relatively small ~20k LoC, but a lot of monomorphizations for static dispatch by runtime performance reasons)
3 minutes to run unit tests
English

@lefticus Whatever your answer is, try Clang built with PGO and BOLT to save yourself some build time (double digit percentages if you’re lucky). And lld or mold for linking while you’re at it. And of course ninja.
English

@lefticus From the top of my head only the smaller of our C++ based projects takes less than 15min on a 16 thread machine. I recently hit the gnu linker max archive size and had to split stuff into different static libs
English

@lefticus ~30 minutes on distributed build ( w/ incredibuild)
~1 hour local build(high-end machines with 20 threads, parallel build).
Both for full release, debug 25% cheaper due to disabled leafs/ build stages.
Mostly C++, but also C# and many resource/code generation as build stages.
English

@lefticus 2016. 280k loc. 10 sec.
Spring4D, one of Delphi's best generics etc libraries.
youtube.com/watch?v=kvuxea…

YouTube
English

@lefticus It's around a minute for a full clean debug rebuild of a single product + library (build from source) + some pre/post scripts.
If for whatever reason it would take dramatically longer I would have restructured my project to use prebuilt static libs or something.
English

@lefticus I mean, my engine an and game isn't that big, just about 11kloc atm, but it takes 0.3sec to compile it fully.
twitter.com/ZeozenB/status…
English














