Jump to content

Recommended Posts

Posted

Hey there Vintarians,

I have 256GB RAM in my dual-cpu Precision 7820 workstation and I'd like to squeeze every ounce of performance out of my machine and Vintage Story without reducing my video quality settings.

I'd like to create a ram disk large enough to hold all the vintage story files and the save games and run it totally from RAM and I can afford a ram disk 128GB or larger. Has anyone else done this? If so, please share how you did it and if you experienced better gameplay and map updates (which can be very slow in a 300+ hour game save.

Thank you!

  • Like 1
Posted

Greetings Lingam, 

Most modern Operating Systems have a system cache which uses unused RAM to cache disk IO. This brings the benefits of having a copy of the files stored in RAM while allowing the memory to be reclaimed for other uses when needed. Even though data stored on a RAM disk is already stored in memory, the IO may still need to go through the system cache, thus still creating a copy as if it was read from any other disk drive.

Many years ago, Operating Systems didn't use free memory for caching and back then using a RAM disk for use to be faster, but now they just create overhead and can sometimes result in worse performance. If you have 256GB of RAM and are only using 32GB of it, then it is quite likely that 128GB save will stay cached in RAM after it has been read.

That being said, many years ago, I used to use a RAM disk to try to speed up IO for Linux servers. You need to copy the files from nonvolatile storage before starting the application. When copying the data from the RAM disk to nonvolatile storage, you need to make sure that the application will not write to the files as this can and will eventually result in corruption. You also want to copy the files to a new location in the nonvolatile storage and wait until the copy finished successfully before swapping it with the old files. Be aware that errors can happen while copying files, and you need to make sure that they are handled properly as they will also result in corruption.

  • Like 1
Posted (edited)

The save file is going to be the hardest part. I run a similar setup (very limited but extremely fast memory) and I'm constantly hitting into OOM issues when the world gets too big. For whatever reason the game INSISTS that you save to the same drive that the game itself runs on, even when you set the primary directory to a hard drive.

Also I don't think RAM is as fast as you think it is. A solid state drive is going to give you pretty much the highest performance you can get, and much cheaper.

Edited by Omega Haxors
  • Like 1
Posted

Thanks guys, all your answers helped me settle down. I was hoping to somehow improve the large map update speed as that can take a loooong time to refresh as I have 345 hours into my current game and a lot of explored areas..

For a bit I tried to use auto-backup (ProtonDrive) to backup my game saves.. Pro-Tip: Do not do this live! It corrupted my game save and I had to repair it.

Appreciate the thoughtful answers. I guess I'll stick with the performance of M.2 SSD for save games and the striped M.2 (3x512gb) for the game program itself.

Posted

Personally I see this less as a puzzle to figure out how to improve the disk read performance and more of an indicator that the map-drawing algorithm might be slightly bugged in that it has to completely redraw your map when you move it, or zoom it. I think it should keep the map cached locally and only redraw the loaded chunks around the player.

I might dig into the code later and see if I can figure out what's going on there.

Posted

So I dug into the code...

Here's what I found.

Every time the map is moved or zoomed, it calls a fairly simple Render method on the entire map and does zero caching of the rendered map textures. I can understand employing this method when drawing the map around the player, but for chunks outside the render distance, it really should cache those map tiles so they load faster.

  • Like 2
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.