I’m trying to use IWYU in my game project, but it’s about twice slower that before. Using 4.15.3.
Using settings:
[FONT=Courier New]PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
bEnforceIWYU = true;
I cannot compile C++ projects in 4.16 at all. It just does not work. It has something to do with some modules that need disabling or something I don’t know where that is in the system…
I was having very long compile times at home until I moved the engine over to my SSD. I noticed on my spin drive, the compile times would be wildly different. Sometimes a few seconds, sometimes upwards of 400 seconds. When I moved to the solid state, everything is consistently shorter than 30 seconds, when compiling the game.
Yep, I was going to say @Syntopia, did you maybe install 4.16 onto a slower drive? I have older engine versions installed on an external drive, and compile times are basically unworkable in that situation with regular precompiled headers. If you check task manager or equivalent, you’ll see I think that your cores are mostly idling because the compilation is heavily I/O bound due to the huge PCH files.
One trick I found was to just use a symlink to allow the engine to be installed on a secondary drive but host the folder containing engine PCH files on an SSD. That way the performance problem is averted but you still save 99% of the disk space on the SSD.
[MENTION=493242]Kyle Langley[/MENTION], do you happen to know why the engine shared PCHs get rebuilt by projects, even though there is only one copy of them in the engine intermediate folders? They just get overwritten when building different projects, so it seems like they should just be built once with the engine and not rebuilt by projects at all.