Jump to content

A 64-bit KSP might be closer than we think(or at least Squad is working on it)


Albert VDS

Recommended Posts

There have been a lot of rumors about a 64-bit version of KSP and that Squad doesn't want to spend it's time on it.

Which is strange because of what C7 said in Scott Manley's Deep Space Hangout on Feb 4, 2014:

For anyone who can't watch the video:

- A 64-bit version of KSP for Windows is in development/testing(Linux already has a 64-bit version)

- The problem is that the 64-bit version for Windows crashes randomly, so there doesn't seem to be consistent cause. (Linux works fine)

- KSP has been updated to Unity 4.3.3 which adds 64-bit for Mac.

- 4.3.3 has the most promising 64-bit version performance, i.e. not crashing.

So KSP might have a (stable) 64-bit Windows and Mac executable on the next release.

But one thing is for sure, that they are working on a 64-bit version.

Link to comment
Share on other sites

Squad never said they don't want to spend their time on it. Unity simply doesn't want to run right, and there's no point spending time to develop a feature that will not work for reasons completely outside your control...

That's the problem with cross-platform engines... they support all platforms half-assedly instead of supporting a single paltform really well :P It's a tradeoff that affects most such projects, because the platforms are simply too different (and if they weren't, we wouldn't have cross-platform incompatibilities in the first place).

Link to comment
Share on other sites

Support for 64-bit needs to come from Unity, which is something outside Squad's control. Squad would (I'm sure) be happy to have 64-bit support on Windows tomorrow if the Unity devs sorted their end out.

Link to comment
Share on other sites

64-bit is supposed to be faster, because most modern processors are optimised for 64-bit processes. When 32-bit processes run, they use some level of emulation that slows things down a bit.

Besides that you can address more RAM, so KSP can use up more than 4GB if necessary. Normally this part isn't that much of a problem for KSP unless you have mods installed or just maybe if you have a very large number of ships or very large ships loaded in physics range.

Link to comment
Share on other sites

Wouldn't the 64bit version use more than one thread as well (we are currently limited to one... which is WAYYYYYYY out of date as nearly everyone has multi-core computers these days).

I've been raring for a 64bit version of KSP/Unity since I first learned of the limits. But then I am a bit of a mod whore. There is just sooooooo much good stuff out there.

Link to comment
Share on other sites

Wouldn't the 64bit version use more than one thread as well (we are currently limited to one... which is WAYYYYYYY out of date as nearly everyone has multi-core computers these days).

64-bit vs 32-bit has nothing to do with threading.

KSP is already multithreaded, it's just that one thread dominates the others performance wise.

Link to comment
Share on other sites

How is 64-bit faster for calculations?

I can't go into the nitty-gritty of it too much, I'll leave that to others if you want to get really techy. My high-level understanding of it is that due to the architecture of x86-64 and the longer word length the processor can handle longer numbers in fewer steps. This makes a big difference for computationally expensive tasks like encryption, video encoding and compression.

Link to comment
Share on other sites

I can't go into the nitty-gritty of it too much, I'll leave that to others if you want to get really techy. My high-level understanding of it is that due to the architecture of x86-64 and the longer word length the processor can handle longer numbers in fewer steps. This makes a big difference for computationally expensive tasks like encryption, video encoding and compression.

As I understand it, floating point and integer performance are the same for 32-bit and 64-bit, just that 64-bit allows larger magnitude numbers in integer and more precise numbers in floating point. Seeing as all KSPs numbers are floating point (I think), 64-bit would give us greater precision but no more performance.

That said, higher precision might help tame the Kraken.

Link to comment
Share on other sites

Having KSP limited to 32 bit because of the Unity engine is affecting you too. Even if you are on Linux 64 bit or Mac 64 bit.

How you ask? Because Squad is having to limit some of the coolness factors in the base game because of the 32 bit memory address limits. Ever wondered why Kerbin isn't in higher textured resolution? Because Squad needed to reserve memory for more parts and other things. If you take up half the memory for textures alone for planets and moons, increasing them only squeezes out more parts and other cool things they might want to add. Do you think they are going to compile a new texture set for the those that can use 64 bit and another for those that can use only 32 bit? I know they could, but do they? Doubt it.

So you see, in this way, your gaming is already being affected by the 32 bit limits imposed by the 32 bit engine.

This is also the reason why Squad hasn't put in many more parts for us to play with. Memory is already tight. I guess they could lower the textures of planets and moons even more. Sacrifice even more eye candy for the sake of more parts to play with.

Oh yea, they could add just a few more parts without reducing textures, but then you are encroaching on the modder's ability to fit their mods into the remaining memory space. And we all know that 'selecting among best mods' is already border-lining on frustration.

Link to comment
Share on other sites

What exactly is the advantage of a 64 bit game? I'm not a computer wizard when it comes to hardware.

In computing in general, there are two advantages. One is immediately apparent to an end user, the other is more of a concern for a programmer or an engineer.

1: You can address more than more 4 GB of RAM. In the case for KSP, a 64 bit KSP would be able to reserve more than 3.5 GB of RAM from the operating system.

2: Large data types can be moved through the processor faster, due to the CPU having 64 bit registers and a 64 bit bus, as opposed to a 32 bit register or bus. Typically, only your programmers and your engineers care about this.

The most vocal demand for 64bit comes from the modding community. If the game could reserve more RAM, you could use more mods alongside each other without having to resort to reduced texture resolutions and so on.

Not only that, but I bet that Squad may be holding out on some things simply because there's not any good 64 bit support from Unity. Like, more planets (more textures).

How is 64-bit faster for calculations?

Because with a 64 bit CPU, it only takes two clock cycles to shove a 128 bit float through the system's bus. On a 32 bit system, it would take four clock cycles (twice as long). It's the fact that you have registers that are twice as big and a bus that's twice as big that makes it easier to cram large values through the system. Basically you just went from a two lane highway to a four lane highway; the four lane can handle much more traffic.

Wouldn't the 64bit version use more than one thread as well (we are currently limited to one... which is WAYYYYYYY out of date as nearly everyone has multi-core computers these days).

No, threading has nothing to do with 64 bit versus 32 bit. That's a completely different beast.

Edited by Raven.
Link to comment
Share on other sites

Because with a 64 bit CPU, it only takes two clock cycles to shove a 128 bit float through the system's bus. On a 32 bit system, it would take four clock cycles (twice as long). It's the fact that you have registers that are twice as big and a bus that's twice as big that makes it easier to cram large values through the system. Basically you just went from a two lane highway to a four lane highway; the four lane can handle much more traffic.

I don't think this will aid KSP's performance, AFAIK it uses 32-bit floats, which will perform the same either way. Or, to use your analogy, a four lane road gains you nothing if there's only one car on the road.

Link to comment
Share on other sites

I don't think this will aid KSP's performance, AFAIK it uses 32-bit floats, which will perform the same either way. Or, to use your analogy, a four lane road gains you nothing if there's only one car on the road.

I think they mentioned that they switched to double precision, which would be 64-bit floats, if I recall. It'll save clock cycles to use actual 64 bit instructions.

Link to comment
Share on other sites

64bits are useful not only performance-wise. Since it is completely new ABI, it is also a chance to get away with lots of legacy cruft on kernel level. It certainly was a big improvement on linux.

As for windows, I don't think it will work anytime soon. Problem is not with 64bit bits, I'm using 64bit linux for years and it works like a charm. Hell, even 64 bit KSP works, and that is an alien there. If there is ever a problem, it's with legacy 32bit apps. But we were using 32bit apps for decades and no problem there either. Problems arise when you combine the two - emulation layer is complicated and tricky bussines.

Now, I recently got myself a new machine (mostly to have more raw cpu power for KSP :-) which gave my gaming rig a chance to move from XP to 64bit win7. Or so they say. I was kinda shocked to learn it is still for the most part 32bit system, almost all thirdparty code and even some system services are still 32bit. My bet would be that Unity itself does not have big problem with 64bits (it certainly does not on linux), but cant cope with system libraries of both kinds, intertwined into a hairy mess. And that is a problem of windows ecosystem as a whole and unity can do nothing about it.

Link to comment
Share on other sites

On my Linux install I have KSP.x86 and KSP.x86_64. It's only just occured to me to compare performance between them. (And heck, to check which one actually runs normally). I only have 4GB RAM total, so I don't know if 64-bit would help or hinder in that case.

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