UE4 multicore performance on (for example) 6 core/12 thread CPUs?

Is it true, Unreal Engine 4 (4.16) is heavily single core dependent? Has 4.20.2 improvements regarding this? And when the UE4 source code is available to game developers, couldn’t they (in theory) improve multicore performance themselves?

The source code is available - you can change it.

Multi-threaded programming is hard.

Currently there are several areas where multiple threads are used. For example, you can utilize the animation fast path to do the bone multiplies on separate worker thread. There are several systems that are designed to optionally leverage threads for work, like the TaskGraph. All rendering is done by a a separate Render Thread that lags a few frames behind.

However, like almost all game engines, the main GameThread is definitely used heavily.

When running in Visual Studio, you can use the Thread View to see the various threads and what they are doing.

When attempting to parallelize your game - the profiler is your friend. It can identify bottlenecks you can attack and move to other threads.

Multi-threaded programming is hard.

One final note - packaging, compiling, building lights are all heavily parallel and do benefit from multi core machines.

And…Multi-threaded programming is hard.

yeah but 11 or your cores sleeping is not fun :frowning: Would you use more cores with this solution:…Threads_in_UE4

Sometimes the core is sleeping because the GPU is too busy, so try to solve the GPU portion first.

Well, UE is just an engine and cant predict what part of your game can and what part cant be multithreaded.
Nobody forces you to do everything in GameThread.