Loading...
  OR  Zero-K Name:    Password:   

Game not utilising CPU to its fullest

13 posts, 5241 views
Post comment
Filter:    Player:  
sort
6 years ago
As the title says, I think the game should be allowed to use more of the CPU's power. For instance, when I look at the team list, I see CPU: 70-100% near my nickname, but when I look at the spring.exe process in Task Manager, it hardly ever exceeds the 20% threshold. The CPU in question is AMD FX-8320.

TL;DR The game should use as much CPU as it wants to.
+0 / -0


6 years ago
The AMD FX-8320 has eight cores. Multithreading is not trivial and you're not going to get full utilization of all cores for most software that has the structure common for games.
+1 / -0

6 years ago
The game is using as using as much CPU as it wants. It only needs enough to process all of the commands and has no benefit from using more than one thread on a single PC.
+0 / -0
6 years ago
If it uses as much CPU as it wants to, then why am I "Catching up" while playing a game with lots of units?
+0 / -0


6 years ago
Because Spring is 15-year-old software, and as such was originally built for single-core processors. There have been projects here and there to retrofit multithreading into the Spring engine, or even rebuild it from the ground up to support multithreading, but those have been difficult and slow-going.

Building multithreaded software is a monumental software engineering challenge when done from the start, and retrofitting software to be multithreaded makes even that look like a walk in the park. At this point I'm pretty sure there is some threading in Spring, though I'm not sure entirely where the separation is (probably between graphics data transfer and everything else), but unless some breakthrough in structuring the physics code comes up that allows arbitrary core usage while keeping the different cores' parts of the simulation in sync with each other, I doubt there's much that can be done to improve CPU usage.
+0 / -0
6 years ago
Should I increase my CPU's clock if I want better game's performance? Is this the only solution to this problem? My CPU is clocked @ 3 GHz at the moment, but I can increase it whether I want to, either by AMD OverDrive (causes Windows Aero problems) or BIOS (I have to restart my PC in order to reach it).
+0 / -0
6 years ago
What about using a hypervisor?
+0 / -0
nice buzzword usage here -.- (am i in a meeting with a client?)
+6 / -0
PLranksomot What GPU are you using? My game ran slow before I patched my graphics software. If it is not running slow I don't see a reason to care either way.

CArankAdminShadowfury333 an easy way to use more CPU is to run more instances of the software. The reason anyone would run multiple instances of Zero-K on one machine is not my problem. Maybe someone could build a multi headed system for easier communication in team play.
+0 / -0
6 years ago
Is no one trying it virtualized? virtual box is free, i've got 8 cores, it supports 3d acceleration... i'll give it a go.
+0 / -0

6 years ago
Hi, Virtualbox will give you some virtual cores, each of which will map to one or less physical core, so I think you will be getting worse performance. Virtualbox cannot translate all 8 of your physical cores into one giant virtual core. Also, it will suffer on the graphics side.
+0 / -0

6 years ago
AMD CPU can't handle ZK in large games and even on medium ones fps dropping is significant. AMD cpu single thread power sucks. To play big games you need I5 or I7. I have made several benchmark tests with my AMD FX-6300 and they was so bad. 40 fps i had only for few times and most tests was 10 - 30 fps. And AMD eight core cpus is same shit as FX 6300 - only two more cores. :D
There was project about that spring could use multithreading but this never come to real life as EGrankzerver only posted/promises in forum and nothing more come.
Also devs insisted against because they thought that was only 10 - 20% performance gain and new zillions problems/instability with such engine.
But AUrankAdminGoogleFrog once offered that he can made software which would load all free cores with trash things. So you could see how CPU is used at all 100%. :D
+0 / -0


RTSMP is/was a real thing. But it's also pointless for ZK due to both the heavy lua dependence and it not being open-source (and many other things that you better ask an engine dev for).
+2 / -0