Jump to content

Serious Frame Rate drops


Recommended Posts

poJjnRYJp

So, my frame rates are less than 5 when I get high part counts, which is predictable. However, I have a decent rig that can handle most games on ultra to high. My settings are at about mid to low, give or take, as of yesterday, when I tried to see if that would help. With those lowered settings, I'm still under 5 fps and just found that my CPU and card aren't even passing 60%. 

This just in, I literally see my GPU ramping up to 97% while typing this, for some random reason, so I know that is CAN surpass 60%. So far, I've OC'd using MSI AB and gone into task manager and given KSP_x64.exe "high priority" as opposed the the "normal" it was on, both changing nothing. You can also see that my PC chills at like 30 degrees C, which is great. It's an MSI RX 580 OC 8gb and my video memory is sitting at 1500mb +/-.

I can't deduce why this is happening? I get 60fps at the space center, but it's like my PC is too lazy to ramp up when KSP is more demanding.

Any help is appreciated.

Edited by ItsSeanBroleson
Link to comment
Share on other sites

12 hours ago, ItsSeanBroleson said:

With those lowered settings, I'm still under 5 fps and just found that my CPU and card aren't even passing 60%.

KSP is for the most part single threaded.  This would be ~25% CPU use on a quad-core processor (as reported by Windows task manager).  Audio and physics multithreading will sometimes use up to one more additional core (so at most ~50% CPU on a quad core as reported by windows task manager).  So, I would say you are getting about as good as you can out of KSP judging by your CPU use alone

The only way to improve the situation is to use a CPU with a higher clock speed * IPC.  (just clock speed alone is not a good indicator of CPU performance, you also need to know how much it does in each clock cycle)

The major bottleneck in KSP is physics, especially on higher part-count craft.  As physical interactions between jointed bodies cannot be multithreaded, this relegates KSP to essentially a single-threaded game.  Worse yet, physics interactions like this are not a linear impact, but something approaching closer to O(n2) in complexity, as each part needs to check -every other part- in the scene for collisions/interactions.  Add onto that the KSP specific physics (gravity, thermal, orbital), which are also done in a single-threaded situation.  This isn't even touching on the PartModule scripting impact, which, depending on the modules in use, might also range from O(n) to O(n2).

 

Edit:  On a decently overclocked i5-2500k (~4.5ghz), I can get 60fps up to about ~120 parts.  Beyond that, the non-linear nature of the updates quickly drags framerates down into the single digit territory.

 

Edited by Shadowmage
Link to comment
Share on other sites

5 hours ago, Shadowmage said:

KSP is for the most part single threaded. 

I'm running an FX-8370 clocked at 4.3 GHz, but AMD CPU's usually prosper with multithreading games and i'm aware their single threading processing is pretty lackluster. Which makes this scenario.... unfortunate. I know that physics calculations are CPU intensive, so idk why I didn't think to include my CPU in the post (sike, I do know, it was 12:30AM). I don't know, however, enough about software programming to know why KSP relies on singlethreading over multithreading, but if I OC'd my CPU would that perhaps give me any improvement? 

I wasn't planning on upgrading my rig anytime soon, but KSP is by far the game I play most often, so I may be knocking on Intel's door.

Edited by ItsSeanBroleson
Link to comment
Share on other sites

7 minutes ago, ItsSeanBroleson said:

but if I OC'd my CPU would that perhaps give me any improvement? 

Yes, probably fairly linear increase in FPS corresponding to the overclock.  30% overclock will likely get you ~30% higher FPS (if CPU is the only bottleneck).

7 minutes ago, ItsSeanBroleson said:

FX-8370 clocked at 4.3 GHz

AMD's CPUs, at least up until the more recent Ryzen series, have had pretty terrible IPC.  So that 4.3GHz AMD is about equivalent to a ~3.0ghz Intel i5/i7 on a single-core comparison basis.  (complete off-the-wall stats, no references or tests, might not be as bad as that; ignoring memory or other platform differences)

Great at multithreaded workloads, not so hot for single-threaded.  The modern Ryzen chips are much more competitive at single-threaded workloads, but still not quite in the same ballpark as Intel.

(note, I've been an AMD fanboy for a long time... but I have to be honest about the CPU differences... and this is why I've used Intel CPUs since the Athlon-II/Phenom-II days)

 

8 minutes ago, ItsSeanBroleson said:

why KSP relies on singlethreading over multithreading

Because they weren't given a choice.  Unity (the game engine that they use) only has limited support for multi-threading of physics.  This is even more far-reaching than Unity however -- game physics, by its nature, is going to multi-thread poorly in any situation that requires inter-object communication (read: collision handling).  They are also limited in how well the physics can multi-thread because of their specific game-object setup -- using Joint components between each Part.

About the best they can manage is running the physics for each 'vessel' on its own thread.  But even then, they need to join/synch across those threads anytime there are collisions between the vessels.  Unsure how they handle terrain, but I would think it is likely not too much different.

TLDR:  Some things 'one cannot simply multithread' to use the current meme.  There are some calculations that cannot be 'easily' multi-threaded due to the nature of the calculation.

 

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...