Jump to content

Performance Advice


CrashTestDanny

Recommended Posts

I have a GTX 980 and i7-4790K @ 4 GHz and I see the same things you describe.

The only thing I can recommend, seeing as you also have a beefy Nvidia, is trying -force-opengl. That has improved stability a great deal for me.

I play at 2560x1080 with all settings on max, except reentry effects.

I settled on these settings after some trial and error. Don't really know what they mean.

http://i.imgur.com/DqOtsd9.png

Cool. Yours is at the top of the list for single thread benchmarks. At least the CPU in my computer is in 5th place. I have the 3.6 ghz version.

I disable hyperthreading in my BIOS and I see an improvement.

http://www.cpubenchmark.net/singleThread.html

Link to comment
Share on other sites

ok, so based on all the advice here I went out and did not buy a new computer :cool:

I tried openGL, and stability was GREATLY improved, but performance on my GTX780 suffered in this mode. So after reading the 64bit thread I discovered there was yet another option to try; -force-d3d11. I turned that on and it seems to have made some marginal improvement to performance while not de-stabilizing the game. I have not seen a crash since Saturday! Yay!

I also did some overclocking, but my CPU doesn't seem to tolerate much of that.

I guess the next thing is to see if I can speed loading times by putting stuff on a ramdisk...

I would suggest reading up on overclocking with your specific mobo as well as cpu.

It might be something as simple as the ram not handling much overclockng, so stepping down one notch on the ram frequency or even timing might get you way further.

Also make sure that temperatures are fine when under load. The more you overclock the less temperature it can handle without giving you stability issues, so swapping out the stock cooler with a decent third party one can also do wonders.

Link to comment
Share on other sites

Hello Danny,

It seems that your CPU might be the i7 3770. That gives you no overclocking capabilities, except for the base clock you mentioned (which is the worst way atm to overclock a CPU). It would be really helpful (if you are willing to spend money, that is) to sell your current CPU, and buy the unlocked sibling, the i7 3770k. Also, you didn't specify but the intel stock cooler is a no-go for overclocking. Additionally, programs like RealTemp are helpful to see if you are temperature limited.

With regards.

Actually, I have the 4770k. I just really didn't want to spend my time learning about overclocking. So many other interesting things to do - like build bigger rockets!

Link to comment
Share on other sites

If you really wanna push your over clock, get something like one off the nice Corsair water coolers, or the Noctua NH-D14 (what I have). Either one ought to get to to at least 4.5 GHz. maybe another point higher in an air conditioned/cool room, and another point yet with the water cooler. The Noctua is a BEAST of an air cooler... You need a thick case to even hold it. It has a 140 mm fan and a 120 mm fan mounted VERTICALLY from the CPU, and you can fit another, if your RAM is low profile! Windtunnel that air through!!! 6 double ended heat pipes worth of heat suckin' madness... :cool:

Link to comment
Share on other sites

As said, leave bclk alone, just crank the multiplier, turn off c-states, turbo and crank the multi. Literally within seconds you can/will have a lot more powerful cpu.

Kinda hard if you dont have a cpu with unlocked multiplier. For him the only choice would be to crank up the base clock.

But still that should give him a decent overclock as long as he lowers things like memory clock and such so that memory is not running way overclocked.

Link to comment
Share on other sites

At about 250 parts, I can count on crashing 2-3 times before I finish whatever activity I was doing with said ship... :(

We all know how terrible framerates get with high part counts but no matter how many parts you have it should not cause crashing. You should probably check output files to figure out what is causing those crashes.

I've happily built over 800 part ships but then the frame rates are in "seconds per frame" rather than fps...

Link to comment
Share on other sites

Kinda hard if you dont have a cpu with unlocked multiplier. For him the only choice would be to crank up the base clock.

But still that should give him a decent overclock as long as he lowers things like memory clock and such so that memory is not running way overclocked.

He (the OP, CrashTestDanny) said in the post immediately before the one you replied to that he has a 4770K so he does have an unlocked multiplier. It should be trivial to raise the multiplier by 2 or 3 even with a stock cooler but trying for more will probably require a better cooler and may also require the core voltage to be increased. Only attempt this if you are confident about doing hardware mods and you can live with the fact that a mistake could kill your CPU...

Another thing that can seriously affect performance is the CPU power management. Some newer CPUs can throttle down even when 1 core is being thrashed hard with the others idle, I have seen dual core laptops that are unable to play flash based video because the CPU is only running at 0.6 GHz rather than 2.2 GHz even though one of the cores is being fully used. Assuming you are on a recent windows OS you can see what speed the CPU is currently running at in task manager. Make sure your computer is set to "High performance" and you can also check the advanced settings to make sure that the minimum and maximum power saving states are set to 100%.

Link to comment
Share on other sites

I don't even have an Intel CPU but has been very interesting read. I thought making the physic delta frame lower to 0.03 would have increased performance, but I'll go home and crank it the other way (up) to see what happens. I've already had a good play around with all the graphics options, it has littl effect to fps I'm playing with a gt650ti boost & AMD 8350 8 core.

I'm not overclocking as Temps scy rocket, I ended up setting refresh sync rate thing to every other frame,!then the VAB is at 25fps solid instead of it pushing for 300 and burning up lol. It seems maybe true because one of my CPU cores are getting thrashed then it may be stepping down the whole thing due to heat or voltage or clock speed. But I do not see a difference with browser open and I often play other games at the same time - just because it has little to no effect on fps on ksp.

Link to comment
Share on other sites

Thanks for the advice guys - I will definitely try out some overclocking before updating my GPU. Sounds like going to one of the newer CPUs with six or eight cores might also be a good option (if I just have to spend money), yes?

No! KSP is not multi threaded.

1.1 might bring something to the table, but it's not guaranteed. Six cores is no better than four is no better than one, for KSP right now. Best bet is an overclock, as others have said. But even then, my i5 at 4.4GHz will struggle past 200 parts. If it's a spaceplane, I need to keep it below ~100 for a graceful atmospheric flight, and even then the clock will be mostly yellow.

Basically KSP is slow because KSP is not very well optimised. No hardware on the planet is going to make it run significantly different to how it does right now...

The welding mod can help though, since it'll cut down the parts count :)

Link to comment
Share on other sites

No! KSP is not multi threaded.

...

Basically KSP is slow because KSP is not very well optimised...

That is actually not correct...

Unity3D is multithreaded, but PhysX isn't, so all physics is handled in one thread on one core, and guess what KSP uses the most, that's right, physics!

Unity3D 5 uses a newer PhysX that can divide the physics of every gameobject into its own task, and redistribute those tasks to your cores, think about that for a minute.

Performance

PhysX3 is now prepared to run on multicores as the internal computation model is organised in tasks that can be executed on different cores. The SDK does all the multithreading, taking care of all the dependencies itself and granting optimal job decomposition.

And the Squad devs have been optimizing KSP for several versions, there have been optimizations to the terrain, to texture formats, to the editor, to name a few of the more prominent.

This claim that "KSP is not very well optimised" is incorrect, it's not helping anyone and people need to stop repeating old out-of-date information.

(Ninja'd)

Edited by sal_vager
Link to comment
Share on other sites

This claim that "KSP is not very well optimised" is incorrect, it's not helping anyone and people need to stop repeating old out-of-date information.

On the contrary, there are numerous areas of KSP's code that are not very well optimized. These generally come in three flavours:

  1. The algorithm used is not suitable for high part count vessels (e.g. an O(n^2) algorithm will be 4 times slower for twice as many parts).
  2. The code allocates and releases memory excessively.
  3. Results of previous calculations are discarded and the calculations repeated when they really don't need to be.

Some parts of the code suffer from more than one of these problems and some have all three.

This information is not out-of-date and, while it doesn't directly help anyone, the situation is unlikely to improve until Squad are convinced that the problems are real and that fixing them is likely to be more worthwhile than whatever other development work they are doing.

As for them optimizing for several versions, this is partially true but, unfortunately, they have also implemented new, non-optimal code for various newer features (e.g. heat mechanics and new aero) and this more than cancels out any improvements that have been made...

Edited by Padishar
Link to comment
Share on other sites

Some people are going to hate me for posting this because they want to insist that a fix they don't personally use no one should use. http://forum.kerbalspaceprogram.com/threads/117224-Windows-64-bit-community-workaround

I have loved kerbal since it came out but it basically crashes on me about every 20-30 minutes like clockwork, then takes about 10 more minutes to load back up. really frustrating to play this way. I have a beast of a computer and there's really no excuse for this happening. I stumbled on this work-around to run kerbal in 64 bit, and I have had one single crash since then. I went from having all textures at 1/8th, minimal detail, small resolution, active texture management, and open gl...all of which made my game look like crap, and still barely playable with constant crashes. Now I have everything on max settings, build huge ships, can actually enjoy the game at length without being frustrtated. This fix actually lets me play kerbal instead of fight it. So ignore all the naysayers who say you shouldn't use it because they'll kill a puppy if you do. Give it a go.

- - - Updated - - -

On the contrary, there are numerous areas of KSP's code that are not very well optimized. These generally come in three flavours:

  1. The algorithm used is not suitable for high part count vessels (e.g. an O(n^2) algorithm will be 4 times slower for twice as many parts).
  2. The code allocates and releases memory excessively.
  3. Results of previous calculations are discarded and the calculations repeated when they really don't need to be.

Some parts of the code suffer from more than one of these problems and some have all three.

This information is not out-of-date and, while it doesn't directly help anyone, the situation is unlikely to improve until Squad are convinced that the problems are real and that fixing them is likely to be more worthwhile than whatever other development work they are doing.

As for them optimizing for several versions, this is partially true but, unfortunately, they have also implemented new, non-optimal code for various newer features (e.g. heat mechanics and new aero) and this more than cancels out any improvements that have been made...

I have to agree to this. You can test it pretty easily. Go to the VAB, load a ship. Then exit and re-enter the VAB a few times. Each time you do your RAM usage will spike higher and higher, as if every prior instance of you being in the VAB is 'stuck' in ram and the new ones are slapped on top of it. You're not loading any new resources, each time you exit and re-enter not even loading a new craft your RAM usage should be about the same. sitting at 3 out of 4 gig of possible ram straight out of the start menu doesn't help this much either. Yet another reason 64 bit client is so important.

Link to comment
Share on other sites

Slowness and memory leaks on scene changes (like leaving/re-entering the VAB) do not bother me because they are infrequent in the context of the game. In-flight slowness is much more annoying. I'd guess that Squad think this too, and allow at least some time for optimization.

However there is optimization and there is optimization. I have no doubt that the Squad developers are using a profiler to identify performance bottlenecks, as has been traditionally recommended for decades. I also have no doubt that they are using elementary optimizations such as object pools to save excessive memory allocation/deallocation, and dirty flags to minimize recalculation, and trying to replace polynomial-time algorithms with O(n.log(n)) ones.

The only problem is that profilers aren't going to find all your problems -- not even, necessarily, the most important ones, such as using expensive data structures. It'd be worth making use of the technique described in this post.

Link to comment
Share on other sites

well, I'm clocked up to about 4G right now and I think that's the most I'm getting. The issue does not seem to be thermal - I'm running temps lower than 130F under load which seems to be pretty good. Performance-wise, the game seems to be doing better when I'm running sub-200 part-count ships, but about the same when I go above 200. At 300+ it becomes unbearable. :( Really looking forward to 1.1... As I mentioned previously, I found that openGL improved stability at the cost of performance, while I found that Direct3D 11 improved performance and stability over Direct3D 9. I have had a couple crashes under D3D 11, but nothing like I was having under 9. I did move my physics rate up to it's highest setting (.12 if I recall) and that has also seemed to have a marginal impact, but only on sub-200 part-count ships. I would sure like to know what the guy who says he likes 1500+ part ships is running! :)

Link to comment
Share on other sites

In case anyone is curious, I did try running KSP from a RAMdisk. I thought there was a possibility, however slim, that it might improve load times. I was disappointed that there was no perceptible improvement in save file load time (which currently takes 3-4 minutes with 40 flights in progress...

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...