By default, UnrealBuildTool (UBT) tries to guess the appropriate number of CPU cores based on your free RAM.

You can override this setting and see if you can build faster by modifying the BuildConfiguration.xml file.

The official documentation page for all the settings you can put into it can be found at: https://dev.epicgames.com/documentation/en-us/unreal-engine/build-configuration-for-unreal-engine

Note that the official documentation seems to be mistaken about where you need to place the file: On Windows, you should put the file into <USER>/AppData/Roaming/Unreal Engine/UnrealBuildTool/BuildConfiguration.xml - you cannot put it into your project’s directory.

The below configuration would force UBT to use 16 cores - change the number in MaxParallelActions based on your own system specs.

<?xml version="1.0" encoding="utf-8" ?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
	<BuildConfiguration>
		<MaxParallelActions>16</MaxParallelActions>
		<bAllCores>true</bAllCores>
	</BuildConfiguration>
	<ParallelExecutor>
		<MemoryPerActionBytes>0</MemoryPerActionBytes>
	</ParallelExecutor>
</Configuration>

Note

This can occasionally cause “compiler out of heap” errors when building if you don’t have a lot of free RAM. If it happens, you can try compiling again. If it’s a persistent problem, you may need to remove the parallel action settings and allow UBT to detect the appropriate number of cores instead.