ARK: Survival Evolved

ARK: Survival Evolved

View Stats:
Joker Jan 30, 2016 @ 10:49am
Server Multi-Core Support?
Maybe this is more of a Dev question but maybe Server owners can comment as well, if you don't mind.

I'm seeing now a "Number of cores" in the Server cmd window and not sure if I seen that before. Is ARK server going to support more than 1 core finally?

After watching the server the cores do seem a little more even but I've not had a huge stress test on the box yet. May turn up the Dino spawns to say 50x and see how things go. I do notice better peformance than a few weeks ago.

Just curious if anyone knew and wish we could get a little more info than "Server Perf 20%" Would be nice to know what's being changed to gain that performance.

Also if it's not using multiple cores then does the Dev team ever plan to move to a multi-core or multi-threaded model?
< >
Showing 16-30 of 38 comments
Sneakers O'Toole Feb 7, 2017 @ 9:28am 
I have a Dell Poweredge 1950 II running a Xeon l5335 2.0Ghz Quad core and 32GB RAM, Windows server 2008 R2. my TheIsland server with 10-15 people will run Core 1 at 94%, Core's 2-4 will show 1-2% use, the server is laggy as hell. Ram use is around 3-4GB

I moved the saves to my Desktop, i7 4930k 3.4Ghz 6 Core, 16GB RAM running windows 10 Pro. 10-15 people on playing. Core 0 (CPU Core1 Thread1 basically) shows 50-80% all other cores and threads will be negligible use. the CPU can cope with ARK and the server runs great without Lag but if I try to play another game (something other than Ark) on my desktop the server (everyone playing) and my game become laggy and unusable

This is a huge issue, I have tried with and without the use all cores option on both Machines, no different
Originally posted by Sneakers O'Toole:
I have a Dell Poweredge 1950 II running a Xeon l5335 2.0Ghz Quad core and 32GB RAM, Windows server 2008 R2. my TheIsland server with 10-15 people will run Core 1 at 94%, Core's 2-4 will show 1-2% use, the server is laggy as hell. Ram use is around 3-4GB

I moved the saves to my Desktop, i7 4930k 3.4Ghz 6 Core, 16GB RAM running windows 10 Pro. 10-15 people on playing. Core 0 (CPU Core1 Thread1 basically) shows 50-80% all other cores and threads will be negligible use. the CPU can cope with ARK and the server runs great without Lag but if I try to play another game (something other than Ark) on my desktop the server (everyone playing) and my game become laggy and unusable

This is a huge issue, I have tried with and without the use all cores option on both Machines, no different

I don't understand how servers with 120++ users can run. There isn't a single core invented that can handle that.

Do you notice what the log says? Add -log to the launch options to see how many cores ARK says it detected. When I use -useallavailablecores it just ignores it and still says 1 core.
Toooni Feb 8, 2017 @ 12:42am 
Originally posted by Flamboyant Douchebaggery:
Originally posted by Sneakers O'Toole:
I have a Dell Poweredge 1950 II running a Xeon l5335 2.0Ghz Quad core and 32GB RAM, Windows server 2008 R2. my TheIsland server with 10-15 people will run Core 1 at 94%, Core's 2-4 will show 1-2% use, the server is laggy as hell. Ram use is around 3-4GB

I moved the saves to my Desktop, i7 4930k 3.4Ghz 6 Core, 16GB RAM running windows 10 Pro. 10-15 people on playing. Core 0 (CPU Core1 Thread1 basically) shows 50-80% all other cores and threads will be negligible use. the CPU can cope with ARK and the server runs great without Lag but if I try to play another game (something other than Ark) on my desktop the server (everyone playing) and my game become laggy and unusable

This is a huge issue, I have tried with and without the use all cores option on both Machines, no different

I don't understand how servers with 120++ users can run. There isn't a single core invented that can handle that.

Do you notice what the log says? Add -log to the launch options to see how many cores ARK says it detected. When I use -useallavailablecores it just ignores it and still says 1 core.

Its possible by setting the dinospawns down and set the taming limit to a low value.
The most power of the server is used to calculate the wild and tamed dinos.
Handling 120 players isn't a problem for the servers, its the dinos and platforms which needs the most power.

Therefore you do not see many dinos on high populated servers :)
Sneakers O'Toole Feb 9, 2017 @ 10:54am 
Originally posted by Flamboyant Douchebaggery:
Originally posted by Sneakers O'Toole:
I have a Dell Poweredge 1950 II running a Xeon l5335 2.0Ghz Quad core and 32GB RAM, Windows server 2008 R2. my TheIsland server with 10-15 people will run Core 1 at 94%, Core's 2-4 will show 1-2% use, the server is laggy as hell. Ram use is around 3-4GB

I moved the saves to my Desktop, i7 4930k 3.4Ghz 6 Core, 16GB RAM running windows 10 Pro. 10-15 people on playing. Core 0 (CPU Core1 Thread1 basically) shows 50-80% all other cores and threads will be negligible use. the CPU can cope with ARK and the server runs great without Lag but if I try to play another game (something other than Ark) on my desktop the server (everyone playing) and my game become laggy and unusable

This is a huge issue, I have tried with and without the use all cores option on both Machines, no different

I don't understand how servers with 120++ users can run. There isn't a single core invented that can handle that.

Do you notice what the log says? Add -log to the launch options to see how many cores ARK says it detected. When I use -useallavailablecores it just ignores it and still says 1 core.

[2017.02.07-13.00.55:014][ 0]Log file open, 02/07/17 08:00:55
[2017.02.07-13.00.55:014][ 0]LogMemory: Platform Memory Stats for WindowsServer
[2017.02.07-13.00.55:014][ 0]LogMemory: Process Physical Memory: 65.28 MB used, 65.28 MB peak
[2017.02.07-13.00.55:014][ 0]LogMemory: Process Virtual Memory: 57.61 MB used, 57.74 MB peak
[2017.02.07-13.00.55:014][ 0]LogMemory: Physical Memory: 5568.22 MB used, 16304.87 MB total
[2017.02.07-13.00.55:015][ 0]LogMemory: Virtual Memory: 289.87 MB used, 134217728.00 MB total
[2017.02.07-13.00.55:459][ 0]ARK Version: 254.89
[2017.02.07-13.00.55:459][ 0]PID: 11184
[2017.02.07-13.01.16:575][ 0]Primal Game Data Took 20.41 seconds
[2017.02.07-13.01.33:090][ 0]Server Initializing with BattlEye Anti-Cheat Protection. If you do not wish to use BattlEye, please launch with -NoBattlEye
[2017.02.07-13.01.33:098][ 0]BattlEye successfully started.
[2017.02.07-13.01.55:591][ 0]Server: "Rusthelp.pw 5x XP, 7x Harvest, 10x Train" has successfully started!
[2017.02.07-13.02.01:971][ 0]Commandline: TheIsland?listen?Port=7777?QueryPort=27015?MaxPlayers=25?AllowCrateSpawnsOnTopOfStructures=True -AutoDestroyStructures -UseBattlEye -servergamelog -useallavailablecores -usecache -nosteamclient -game -server -log
[2017.02.07-13.02.01:971][ 0]Full Startup: 70.99 seconds (BP compile: 0.00 seconds)
[2017.02.07-13.02.01:972][ 0]Number of cores 6


Thats the Log startup from on my desktop. the Poweredge startup says Number of cores 4

It makes no difference if I have the -useallavailablecores on there or not. I get the same output.

Turning BattlEye off decreases startup time and memory use but has no effect on the CPU
Sneakers O'Toole Feb 9, 2017 @ 10:59am 
I actually ordered a Xeon X5365 3.0Ghz processor to upgrade my Poweredge and see if it can manage the server software on a 3.0Ghz core. I'll let you know when it arrives if it makes any difference. I just have to get this Server software off my desktop so I can play something other than Ark and not have to shut everyone else that uses the server out of the game to do it.
Sneakers O'Toole Feb 9, 2017 @ 11:11am 
Originally posted by Toooni:
Originally posted by Flamboyant Douchebaggery:

I don't understand how servers with 120++ users can run. There isn't a single core invented that can handle that.

Do you notice what the log says? Add -log to the launch options to see how many cores ARK says it detected. When I use -useallavailablecores it just ignores it and still says 1 core.

Its possible by setting the dinospawns down and set the taming limit to a low value.
The most power of the server is used to calculate the wild and tamed dinos.
Handling 120 players isn't a problem for the servers, its the dinos and platforms which needs the most power.

Therefore you do not see many dinos on high populated servers :)


Actually the number of Dino's makes no difference from what i have seen. I have 1 Server save thats always loaded Dino spawn rate is not changed from default. Tamed Dino's is at 10k so the number of dino's spawning and tamed remains constant until someone tames a new one. when i run the Server with only 1 or 2 people connected it runs the CPU core at about 20-30% it's not till a few people get on that the number goes up. 10 people core 0 will show about 50-60% 15 people it will show around 70% most I had on at once was 18 and it sat around 82% with all other cores at most showing 1-5% from other running processes on the computer.

The problem is not the number of Dino's, it's that the server only uses a single core of the CPU (in the case of my multi-threaded i7 it's actually a single thread so literally half a core). if it used all the cores that 80% single core use would be less than 5% across the entire CPU.

That would make a massive difference to the performance of the game and the performance of my Desktop whilst running other things alongside the server software.
Joker Feb 9, 2017 @ 2:49pm 
From everything I've researched it actually uses two cores. One for the engine and one for physics data. Still not really a good use of servers that have 8 or 10 cores but on a 5ghz i7 with a ramdisk we have good lag until about 40 players then it is rubberband city. CPU won't use more than 60% so it's like the engine isn't even feeding the CPU information fast enough. No bottlenecks in hardware so it has to be software related would be my assumption.
Originally posted by BoxieGames Joker:
From everything I've researched it actually uses two cores. One for the engine and one for physics data. Still not really a good use of servers that have 8 or 10 cores but on a 5ghz i7 with a ramdisk we have good lag until about 40 players then it is rubberband city. CPU won't use more than 60% so it's like the engine isn't even feeding the CPU information fast enough. No bottlenecks in hardware so it has to be software related would be my assumption.

That's really weird because from everything I've researched, the UE4 engine was built around multi-core support. https://answers.unrealengine.com/questions/12107/question-using-dual-cpu-pcs.html

Interesting thread here: https://steamcommunity.com/app/346110/discussions/0/530649887196630307/

I'm kind of wondering as well, maybe multi-core support is tied to DirectX on windows, and maybe that's why we only get Single core in Linux.

One thing to try, is SteamOs itself, since some of the updates I've seen for ARK target SteamOs specifically. SteamOs has Direct3D support of a sort.. https://www.extremetech.com/gaming/178276-valve-open-sources-its-directx-to-opengl-translation-software-here-come-the-steamos-and-linux-games
Did some more tests. It looks like UE4 might need the cpu acpi hotplug kernel modules installed. These are not installed in containers (OpenVZ). If someone would test out LXC containers, that would be great. Meantime, I switched over to a Parallels (KVM) OpenVZ instance running Windows and it detects 4 CPU's. I decided not to go with Linux in the VM because the perfomence gains are now negligible, and I get to use the ASM.

Anyway, attempting to run ARK on the host server showed just constant looping of:

sched_getaffinity(0, 128, {ff, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}) = 128 open("/sys/devices/system/cpu/cpu0/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu1/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu2/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu3/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu4/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu5/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu6/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory) open("/sys/devices/system/cpu/cpu7/topology/core_id", O_RDONLY) = -1 ENOENT (No such file or directory)
Sneakers O'Toole Feb 10, 2017 @ 6:47am 
Originally posted by BoxieGames Joker:
From everything I've researched it actually uses two cores. One for the engine and one for physics data. Still not really a good use of servers that have 8 or 10 cores but on a 5ghz i7 with a ramdisk we have good lag until about 40 players then it is rubberband city. CPU won't use more than 60% so it's like the engine isn't even feeding the CPU information fast enough. No bottlenecks in hardware so it has to be software related would be my assumption.

I can agree with this. everything i read even posts on forums from Unreal Devs say it should use 2 cores. this is deliberate so people can run multiple deid=cated servers on a single box without them crossing resources.

However in practice ARK is not doing this.

And @flamboyant DirectX is not a thing here as both my machines i have tested this on are windows based using DirectX.

As a test I have changed the affinity on my DT to use ONLY cores 9 and 11 Meaning thread 2 on Core 5 and ythread 2 on core 6. I will update when i have some data.
Zaphod4th Feb 10, 2017 @ 7:27am 
Mine always shows 4 cores.
Joker Feb 10, 2017 @ 7:41am 
mine shows the cores too but it doesn't use beyond 2. The main core 0 is for trhe engine and core 1 is for physics and no other cores are touched even though it shows all cores and I'm using the useallavailable it really is a false statement because I'm seeing no threads on the other cores beyond 0 and 1
Originally posted by Zaphod4th:
Mine always shows 4 cores.

I think this is mainly a Linux problem. Windows almost always shows 4 cores. I've never seen Linux show 4 cores on any type of setup.
Wreck-It-Ralf Jan 11, 2018 @ 2:16pm 
mine shows 8 cores from my dell server using xeon processors and i get the same issue, i have the island and ragnarok running, 1 cpu is clocked at 80% and in game its not great with over 20 people logged on. the other 7 are pretty much doing nothing. the island is running sweet but there only a few people on here. did anyone find a fix for this?
Originally posted by JamieW1989:
mine shows 8 cores from my dell server using xeon processors and i get the same issue, i have the island and ragnarok running, 1 cpu is clocked at 80% and in game its not great with over 20 people logged on. the other 7 are pretty much doing nothing. the island is running sweet but there only a few people on here. did anyone find a fix for this?

I don't believe it was ever fixed. Considering ARK is out now it's effin unexcusable for the devs to be this lazy. But there you go. Busy making DLC's while jerking off to a one year old bug that makes Linux servers unworkable.

Do yourself a favor and don't run an ARK server. The resources it took to run a virtual Windows server are now better spent running a lean Rust container.
< >
Showing 16-30 of 38 comments
Per page: 1530 50

Date Posted: Jan 30, 2016 @ 10:49am
Posts: 38