How to minimize project rebuild time

Hi! Question about rebuilding the project.
If I use PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs; than
SharedPCH.Engine.cpp
build freeze my PC for significant delay. For instance, with
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
my project rebuild time is ~60 sec.

If I use
PCHUsage = PCHUsageMode.Default;
my project rebuild time is ~30 sec.
but I need to add to much additional headers. But rebuild time is what I want. If I add Engine.h (to reduce amount of headers to add to each new class) to ProjectName.h
rebuild time is ~90 sec. Its to slow for me.

And the funny part of the story. 3 days ago I was testing new hardware (exactly the same power as my current PC has now) on different PC and don’t install UE4 from launcher but just copy engine to this machine. New machine has the same Visual Studio configuration, but when I started testing it and create c++ vehicle template from editor, project rebuild time was minimum ~30 sec, but I no need to add extra headers to newly created classes.

If anyone can help me to achieve the same result (min project rebuild time, no additional headers) or explain how does it work, I will be infinitely grateful.

P.S. Hot reload is fast in all cases and not a topic of this question. Hot reload time is sufficient:

  • small change in cpp ~1.5 sec
  • small change in h ~10-12 sec