Linux Server -- multi core / thread support?

Hi all,

I’ve searched but could not find this answer.

I am runing my UE4 server from a CentOS 7 x86_64 platform. It seems I am only using 1 core, when I have 4. Is there a command line argument or a .ini setting to enable multicore support?

I have used the htop program to confirm the server is only using 1 core out of the 4 available.

Thank you!

Was this ever solved? We’ve just noticed this as well. Tested our game on a dual core and then a hexa core server, same results as the dual core.

Hmmm there seams to be multithread support for linux implemented

https://github.com/EpicGames/UnrealEngine/blob/c9f4efe690de8b3b72a11223865c623ca0ee7086/Engine/Source/Runtime/Core/Public/Linux/LinuxPlatformRunnableThread.h

How well a dedicated server is using multiple cores depends on your gameplay code. If you only do things on the game (main) thread, then it’s expected :slight_smile:

That said, if you want to run as many dedicated servers on a single machine as possible, then you want your servers to be single-threaded. In that scenario there are no free cores (if a core is underused, you can simply run one more server), and multi-threading only adds the overhead.

That depends on the game though, and whether your bottleneck is CPU or RAM.

Just a bump on this.

How do I enable multi threading for Linux?

I am sitting on 100% but the system is sitting on 50%. (2 total cores)

Cheers

EDIT: I upgraded the server to 4 cores to prove that is it only using one core.

Would it not be wiser to run multiple servers instead like RCL mentioned?

How wise it is to use more than a thread server side is debatable from the little I understand.

You want your game to perform well on one core and run more dedicated servers instead so potentially use an 8 core to have…8 dedicated servers.

Is the 64-bit Windows Dedicated Server able to multicore? Let’s say i have 16/32 cores and 120/240GB ram and i want to host 1000+ clients on a single UE4 server instance at once.
Same question for Linux Dedicated UE4 server, can it handle this? The example would be the simple blueprint based 3rd person game without any modifications.

Use worker threads. By default everything runs on the render(main) thread!