Jump to content

Allow players to stage another scene on another computer core so that changing scenes would be nearly instantaneous.


Recommended Posts

Allow players to stage another scene on another computer core so that changing scenes would be nearly instantaneous.  Always keep the last scene frozen on another core for quick back and forth.  Think the button on the TV remote that toggles between current and last channel.  But best to let the player designate scenes that should be preloaded given conditions current scenes.  Available RAM would be a big factor also of course.  But having 64GB of RAM and 12 cores at 4Ghz it just seems really silly I have to wait 45 seconds to go from the VAB to the Space Center

Link to post
Share on other sites
5 minutes ago, darthgently said:

Allow players to stage another scene on another computer core so that changing scenes would be nearly instantaneous.  Always keep the last scene frozen on another core for quick back and forth.  Think the button on the TV remote that toggles between current and last channel.  But best to let the player designate scenes that should be preloaded given conditions current scenes.  Available RAM would be a big factor also of course.  But having 64GB of RAM and 12 cores at 4Ghz it just seems really silly I have to wait 45 seconds to go from the VAB to the Space Center

Oh no, you had to wait 45 seconds

Link to post
Share on other sites

Joke response:

You should have made the body of your post "Subj."

Actual response:

This is a crazily niche request. The amount of work involved getting this to work would be far better spent on pretty much anything else.

Link to post
Share on other sites
12 minutes ago, Superfluous J said:

Joke response:

You should have made the body of your post "Subj."

Actual response:

This is a crazily niche request. The amount of work involved getting this to work would be far better spent on pretty much anything else.

You make a great point.  All new features should be put on hold until the fairly sizeable active bug list is completely cleared out.  Now that would be time well spent

19 minutes ago, SpaceFace545 said:

Oh no, you had to wait 45 seconds

Apparently you have time to spare

Link to post
Share on other sites

I wonder whether this suggestion is possible. Remember that the key requirement for fully parallelizing software tasks is that they have no dependencies. If the contents of Scene B depend on what happens in Scene A, then Scene B can't be loaded (correctly) until Scene A finishes.

So does Scene B depend on Scene A? Typically these would be things like the space center and vessels in flight; are there cases where choices that I make in one of those can influence what happens in the next thing that I switch to?

One idea is to switch to a craft in orbit, burn to de-orbit it to hit the space center, then switch to the space center. With the current stop-everything-and-wait approach, this works as expected, because the in-motion crafts are saved to disk and then loaded into the space center scene with the same positions and velocities they had before (though this scenario would already suffer from some hiccups with atmospheric drag and physics distance).

With an attempted parallel loading system, it could depend on how long ago the game started loading the space center; if it began before the burn (not completely crazy if it currently takes you 45 seconds to load a scene), then when you switch to the already-loaded space center scene, the craft in orbit might effectively have its de-orbit burn "un-done", because it had not happened yet when the space center scene was loading and needed to know about it.

There might be better examples; this was just the first thing I thought of. And there might be solutions, but they're all going to make the game's simulation a lot more complicated (and therefore buggy, and we all know how much we all like bugs).

Link to post
Share on other sites

Overlapping threads have been merged. 

You don't have to like every suggestion put forth, but please don't mock them, okay guys? 

Link to post
Share on other sites
1 hour ago, darthgently said:

I have to wait 45 seconds to go from the VAB to the Space Center

You must be running the game on a mechanical drive from 1994, installing every single mod on CKAN, or there's something horribly wrong with your install. I have never seen scene loadingtake anywhere near 45 seconds, and that with 100+ mods and on hardware inferior to yours.

 

1 hour ago, Superfluous J said:

This is a crazily niche request. The amount of work involved getting this to work would be far better spent on pretty much anything else.

Also, this ^

Link to post
Share on other sites

If we do that for that and the runway/return to runway/VAB it could do loads of good. Especially for large ships. Keeping your ship warm for return tries could be nice for ship testing.

I imagine you want this on a setting to turn off when needed and make it so they never cross cores.

Edited by Arugela
Link to post
Share on other sites
7 hours ago, darthgently said:

You make a great point.  All new features should be put on hold until the fairly sizeable active bug list is completely cleared out.  Now that would be time well spent

I'd personally if all behind a bugfix pass. And a balance pass. Getting the list "completely cleared out"? Naaw I want new features to come before forever.

Link to post
Share on other sites

For new players, the delay between VAB and launch, and then back, is particularly frustrating.   

And for me it was confusing; on my first launch I thought KSP was stuck so killed the process, and concluded my PC was not capable of 'gaming'.  Later I saw KSP played on some YouTube channel and noticed the long delay was considered normal.

Long-time players appreciated the change in version 1.4 to go directly from VAB to SPH with no delay, rather than wait for two scene-changes to load in between.  Many versions earlier, KSP added the [ and ] keys function to let players switch from a craft on the launchpad, to one on the runway.

With the EVA construction interface taking some of the VAB outside, it does seem there is some chance KSP could put the VAB in the same 'scene' as the launchpad.  (I don't expect such a change at this late date, however.)

Link to post
Share on other sites
16 hours ago, steve_v said:

I have never seen scene loadingtake anywhere near 45 seconds, and that with 100+ mods

i have over 100 and i can confirm that it takes around 8 to 10 seconds to go from the VAB to the space center and vice versa

Link to post
Share on other sites
Posted (edited)
On 1/5/2021 at 9:02 PM, steve_v said:

You must be running the game on a mechanical drive from 1994, installing every single mod on CKAN, or there's something horribly wrong with your install. I have never seen scene loadingtake anywhere near 45 seconds, and that with 100+ mods and on hardware inferior to yours.

 

Also, this ^

You could be right that there is something wrong with my install, or mono on linux.  but i'm running very few mods on a 64GB 4Ghz Core i7 with 12 cores which should be adequate.  I'm running on a solid state drive on a fresh Debian install with a 2 year old NVidia card.  I've spent hours on forums trying to find ways to speed this game up and all I've learned is that I've done all anyone knows to do. [snip]

Edited by Vanamonde
Link to post
Share on other sites

[snip]

Fan? sure. It's a good game.
It's also full of bugs, janky as hell, and suffers from various performance problems - most of which I have commented on in this forum before [snip]
Scene loading taking 45 second's just isn't one of them.

Either you're exaggerating wildly, or there's something else going on. Neither is call for rewriting core game systems in such a complicated way, especially considering all the new  bugs it will inevitably ship with.

Edited by Vanamonde
Link to post
Share on other sites

I’ve seen some long-ish load times before, but only when using many mods (80+ each time), a save that has a lot of active crafts in it (especially with mods like Kerbalism that add a lot of extra data into many parts) and when loading large (hundreds of parts) crafts onto the launchpad or runway.

Culling unnecessary old crafts and debris seemed to improve things, running the game for long periods made it load slower and having more save files in the saves folder also made it go slower, so an occasional reload and deleting old saves might help keep those load times under control.

Link to post
Share on other sites

Again, Not everyone uses a super high end gaming PC

I don't but one is on the way for me, I think that using the other cores on a PC(even excrementsty laptops have multiple cores)should be a priority

It means that people on worse PCs can have better preformance, certainly, it isn't impossible to add something like automation, as in,  things can do actions automatically, e.g docking, or preforming manuvers(node needed) or landing on planets/moons(staging will NOT occur during landing, so forget about eve, duna, or tylo landers, but a mun/minmus lander  could CERTAINLY BE AUTOMATED

Link to post
Share on other sites

At minimum, a lot of the background stuff could be run on another core or two.  I don't know if stuff on rails is even attended to between being loaded, but if so, that could be done on another core.  But the bottom line is that preloading data is a fairly well-worn performance technique and the "scene" structure of KSP seems cut out for it.  It has  clear cut boundaries between scenes already.

Link to post
Share on other sites
8 minutes ago, Vanamonde said:

The insulting remarks have been removed from the discussion. Keep it polite, please. 

If there is a way for me to shorten the subject of this thread I'll do it.  I think that is probably the first thing that is setting people off.  It looked fine to me at the time, then I saw it on my phone later and cringed.  Feel free to play editor with it if you wish, no worries here. Or point me to how I can edit it as how to do that is eluding me

Link to post
Share on other sites

I wonder if there could be a way to preload runway also. Then maybe the ship you are using could be pre done to some extent to speed up loading. This could be oriented at large ships to speed up initial runway stuff. Then all loading and reloading could be partly done. Would make use of multi core. I just don't know if my cpu is powerful enough for multiples of these. some setting to dictate which things to preload could be nice. Not sure how to mix that with changing parts in the construction buildings. Without creating extra lag at least. Maybe set it to how much of a core and/ore how many cores to use with data. it could change the data in way as to not use the important/focused parts of the game.

Edited by Arugela
Link to post
Share on other sites
Posted (edited)
10 minutes ago, Arugela said:

I wonder if there could be a way to preload runway also. Then maybe the ship you are using could be pre done to some extent to speed up loading. This could be oriented at large ships to speed up initial runway stuff. Then all loading and reloading could be partly done. Would make use of multi core. I just don't know if my cpu is powerful enough for multiples of these. some setting to dictate which things to preload could be nice. Not sure how to mix that with changing parts in the construction buildings. Without creating extra lag at least. Maybe set it to how much of a core and/ore how many cores to use with data. it could change the data in way as to not use the important/focused parts of the game.

This seems feasible.  The data for the craft is already in memory and so sharing mem with a runway/launchpad process during scene change for launching would probably be quicker than saving to disk from the editor then reading it back from disk to launch.  As far as I know this is may already done, but given how long it takes to get from editor to launch really don't think so.  The scenes often have very different looks and feels like subtly different devs or teams not only maintain them, but designed them.  Like key mappings between the VAB, SPH, and In-Flight.  So many different ways to zoom in and out, right?

Edited by darthgently
Link to post
Share on other sites
On 1/5/2021 at 11:02 PM, steve_v said:

You must be running the game on a mechanical drive from 1994, installing every single mod on CKAN, or there's something horribly wrong with your install. I have never seen scene loadingtake anywhere near 45 seconds, and that with 100+ mods and on hardware inferior to yours.

 

Also, this ^

Yeah my 7200RPM 3TB drive in my primary rig doesn't even come close to taking 45 seconds to change scenes, and i have 32GB of RAM (3200mhz).

6 hours ago, darthgently said:

At minimum, a lot of the background stuff could be run on another core or two.  I don't know if stuff on rails is even attended to between being loaded, but if so, that could be done on another core.  But the bottom line is that preloading data is a fairly well-worn performance technique and the "scene" structure of KSP seems cut out for it.  It has  clear cut boundaries between scenes already.

Next time you're playing, take a peak at your task manager. KSP uses multicore for objects that aren't loaded in the current scene (I.e things in orbit).  Plenty of mods also have background processes/simulation on other cores as well.

KSP physics is about the only thing that would be extremely difficult to make multicore, and that wouldn't affect loading scenes.

 

Link to post
Share on other sites
Posted (edited)
9 minutes ago, Incarnation of Chaos said:

Yeah my 7200RPM 3TB drive in my primary rig doesn't even come close to taking 45 seconds to change scenes, and i have 32GB of RAM (3200mhz).

Next time you're playing, take a peak at your task manager. KSP uses multicore for objects that aren't loaded in the current scene (I.e things in orbit).  Plenty of mods also have background processes/simulation on other cores as well.

KSP physics is about the only thing that would be extremely difficult to make multicore, and that wouldn't affect loading scenes.

 

I don't know about Windows, but mono/KSP on linux pegs one of my 12 CPUs and that is about it.  I've been trying to hunt down more detailed info on persuading mono to maybe be smarter and found a few tricks.  But it was my understanding that KSP, on windows, or linux, only ran in a single process and definitely only on a single core.  Maybe that is Steam stuff you are seeing?  Or I was misinformed.  I would like to see some technical cites as to Unity/KSP/Mono and mods using more than one core.  I've been told by mod devs that it simply isn't so.  Don't get me wrong, my mind can be changed subject to evidence; and it may be platform dependent I suppose

Edited by darthgently
Link to post
Share on other sites

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