Reputation: 289
I just tried to compile Unreal Engine as documented by Epic Games.
While building the project in Visual Studio 2017, I noticed that most of my cores are idle:
Even if I subtract the cores that are only logic (because they are not "real"), half of the cores are more or less inactive. (16 real cores, but only 6-8 of them seem to be really working)
I doubt that other hardware components are a bottleneck. The memory is half-empty and the SSD's are doing basically nothing (arround 1% usage). I've set the maximum number of parallel project builds in the Visual Studio settings to 32.
Is there something I've been missing? Can I do something to get better performance by utilizing more cores?
Upvotes: 2
Views: 2318
Reputation: 3285
Not all operations/algorithms are equally suitable for parallelization. Some are inherently sequential in nature. e.g. the sequence in which different projects are built is dictated by the dependencies between them. Furthermore A lot of intermediate files are used during compilation and building. Even when using SSD's, this involves a lot of IO-bound operations where the CPU-core idles. Since a lot of those files are small, they will not cause a lot of throughput but they will involve a significant overhead...
Maybe an interesting read: https://cs.stackexchange.com/questions/19643/which-algorithms-can-not-be-parallelized
Upvotes: 1