3 ms·
FYI Unity builds are often slower than incremental builds with proper caching.
by pharmakom 3y ago
FYI Unity builds are often slower than incremental builds with proper caching.
- maccard 3y agoWhat can I use to cache with MSVC that isn't Incredibuild? (a per-core license model isn't suitable - we'd spend more on incredibuild licenses every year than we do on hardware) Also, I've spent a _lot_ of time with Unreal and the build system. Unreal uses an "adaptive unity" that pulls changed files out of what's compiled every time. Our incremental single file builds are sub-10-seconds most of the time.
- rewmie 3y ago> What can I use to cache with MSVC that isn't Incredibuild? Ccache works, but if you use the Visual Studio C++ compiler you need to configure your build to be cacheable. https://github.com/ccache/ccache/wiki/MS-Visual-Studio https://github.com/ccache/ccache/wiki/MS-Visual-Studio
- maccard 3y agoLack of Precompiled Header support kills this for us immediately. (We also currently use the unsupported method of debug info generation which we could change). A local build cache is no better than UnrealBuildTool's detection though.
- rewmie 3y ago> Lack of Precompiled Header support kills this for us immediately. Out of curiosity, why do you use precompiled headers? I mean,the standard usecase is to improve build times, and a compiler cache already does that and leads to greater gains. Are you using precompiled headers for some other usecase?
- maccard 3y agoImproved build times is _the_ reason. > and a compiler cache already does that and leads to greater gains Can you back that claim up? I've not benchmarked it (and I'm not making a claim either way, you are), but a build cache isn't going to be faster than an incremental build with ninja (for example), and I can use precompiled headers for our common headers to further speed up my incrementals. You did encourage me to go back and look at sccache though, who have fixed the issues I've reported with MSVC and I'm going to give it a try this week