orewashinigamiza 2017년 6월 13일 오전 2시 12분
Use of a ramdrive to increase user performance
Hi! I just wanted to say that I really enjoy using Steam. That said, lately I've been trying to figure out ways to get my computer to perform even better. While reading a random topic somewhere I came across the idea of a ramdrive (explanation below, at bottom). In short, I think it would be a unique feature, and perhaps one that could attract developers to steam as well as encourage gamers to use the steam launcher as opposed to a developer's non-steam native launcher.

The advantages to launching something in a RAM drive are the exceptionally fast read/write speeds. From what I understand it is 10-100 times faster than SSDs and more than that than traditional spinning platter disks. This gives non-SSD gamers faster-than-SSD-speeds, and would do so for any game whose entire file structure could fit into their computer's RAM. That being said, the limitation is how much RAM the user has. Steam already has minimum and recommended HDD and RAM requirement information for it's games so it could simply do a per-game, per-user check and if the user has enough ram maybe enable a checkbox in the games properties window that says 'Boost using RAMDRIVE' or whatever marketing term you want to come up with. Naturally also add in some buffer space (perhaps from aggregate user data?) to both reserved ram for the OS and the game's new 'drive' and then save each game folder as an image file that is associated with Steam's RAM drive program so it can be mounted manually to access folder internals as needed. I kinda jumped a little bit ahead here, I recommend installing each game that utilizes said ram drive as it's own image file stored on the HDD (or SSD) then being mounted.

Implementing this though would require research into RAM drive on Steam's part. Microsoft included a RAM drive example application and DLL in Windows up until Windows 7 (RAMDRIVE.EXE), and from what I understand it is natively available in Mac OS although I don't use Mac so I can't be of too much help there. It would require some modification of the Steam UI to include the option, creation of the actual ramdrive program itself, implementation of logic checks (to determine if the user can actually mount the drive...might also need to check to see how much ram the user is using at the time of launch too), a little bit of coordination with the windows shell, something to determine how to store each ramdrive on disk (format, compression, etc.) while not in use, as well as a manner to save the changes before the application quits (perhaps a background process to copy changes over to the HDD as the game is played or unloaded, though incremental is better as it provides some backup in case of application failure or power outage).

In closing, I think this would greatly benefit developers (games run faster), gamers (games run faster), and Steam (possesses a feature to increase game speed, attracting gamers and developers as well as a unique technology). It could potentially be monetized I suppose, like a subscription or one-time purchase option however it'd be difficult to do due to the onus being on the user's RAM.

I don't think we're at a point yet where you'll see users using it on large AAA titles such as Fallout or Battlefield due to the large size of those games (~40Gb), however RAM size is rapidly increasing. 16GB is now becoming the standard, it wasn't even 2 or 3 years ago when 4 was the norm, I've seen systems offering support for over 128GB of ram before...one such board even supported up to 1TB.
< >
13개 댓글 중 1-13개 표시
orewashinigamiza 2017년 6월 13일 오전 2시 16분 
Forgot to define ramdrive. A ram drive is simply a portion of your ram that is mapped as a hard drive as far as the operating system in concerned. This requires a third party application usually, but it boasts extreme speeds because the information is already in the working memory of the computer. Using it for gaming would involve the creation of one such drive, then the installation of the game on that drive. For persistence purposes, you would want to write the contents of that drive to some kind of image file before, during, and/or after use. This could be something as simple as differences/changes made, or even just specific subfolders (such as the saves folder).
𝔗 𝔬 𝔟 𝔦 𝔞 𝔰 2017년 6월 13일 오전 2시 46분 
my brain hurts...:Buddha_CC:
Lucas 2017년 6월 13일 오전 3시 16분 
Hades님이 먼저 게시:
my brain hurts...:Buddha_CC:

OP could include a TL:DR but it's not too hard to understand.

Your RAM is one of the fastest memory speeds in your computer only really beaten by your CPU cache. So loading small or large amounts of data into them lowers loading times.

The only issue is users who do not have enough RAM to make good use of it, majority of steam users have 8GB or less. To really take advantage of this kind of software you'd need a minimum of 16GB and even pushing 32GB if you wanted to start playing larger games.
Start_Running 2017년 6월 13일 오전 4시 18분 
Lucas님이 먼저 게시:
Hades님이 먼저 게시:
my brain hurts...:Buddha_CC:

OP could include a TL:DR but it's not too hard to understand.

Your RAM is one of the fastest memory speeds in your computer only really beaten by your CPU cache. So loading small or large amounts of data into them lowers loading times.

The only issue is users who do not have enough RAM to make good use of it, majority of steam users have 8GB or less. To really take advantage of this kind of software you'd need a minimum of 16GB and even pushing 32GB if you wanted to start playing larger games.

You would basically need ram space large enough to hold all the game files, in addition to space needed to actually perform the game's memory operations in addition to the ram your OS and other software would need bto operate.

And god help you if you have a crash or power outagebecause there went all your progress.

Storing a ramdrive on disk kinda defeats the purpose of a ramdrive as well but all these things are already known to devs. They just don't because it tends to be not worth it. Because here's the thing. your ramdrive would wind up occasionally getting swapped out with the pagefile (which would needs bee at least 150% the size of the game itself to avoid risk of pagfile errors.

DUde. It's not worth the headache, just to save on a little loading time here and there.That's really the only time you'd see a performance difference.
Start_Running 님이 마지막으로 수정; 2017년 6월 13일 오전 4시 19분
Carpetbeater 2017년 6월 13일 오전 4시 50분 
Start Running is right - can cause more problems than you or probably the best code writers could ever know.
76561198001062896 2017년 6월 13일 오전 5시 28분 
so basically asking them to implement essentially a glorified snakeoil?

Thanks but they may as well download more RAM then
Start_Running 2017년 6월 13일 오전 5시 32분 
That's not to say ramdrives don't have their uses. many live distros run out of ramdrives. This is done because

A.) The Drives may not be useable
B) The distros are fairly small and compact

Games are anything but.

Oh and as said. with something as large as a game along witrh the other parts of an os, you will at somepoint have those many gigs being swapped to the pagefile at somepoint and that means you will have a hella wait while it reads the ram drive onto the disk and then writes it back into memory.

But hey. you can try this for your self. Create a ramdrive, create a steam folder on it and transfer a game like say FO 3 or Bioshock infinite to it.
Black Blade 2017년 6월 13일 오전 5시 38분 
FrostDust 2017년 6월 13일 오전 5시 42분 
OS X and Linux have this functionality built in, and there are many third-party programs do this for Windows, both commercial and open-source. In fact, Steam even sells one of these programs, DIMMdrive. There's no need for Valve to integrate this into Steam, especially as there's many potential downsides without a gaurenteed benefit, as others have pointed out.
FrostDust 님이 마지막으로 수정; 2017년 6월 13일 오전 5시 43분
Spawn of Totoro 2017년 6월 13일 오전 6시 12분 
...RAM is volatile memory so you can't store thing in it for long. It would still take time as the information has to move from you HDD/SSD after boot.

Besides that, any program you are running is often moved into the RAM anyways for faster access.


If there was a power outage, then everything in the ram would instantly be lost as well. No power means your system RAM blanks out.

Even places that disucss RAM drives say that they are a temporary solution and not for long term use.

http://www.makeuseof.com/tag/ram-drives-faster-ssds-5-things-must-know/

An SSD or a Hybrid Drive is still the better option.

If there was a power outage, then everything in the ram would instantly be lost as well. No power means your system RAM blanks out.

Finaly, you need you system RAM for other programs too, so to use it for storage, it could cause issue with the rest of your system.

There is a reason such solutions are not common place or used by companies.
The_Driver 2017년 6월 13일 오전 6시 16분 
Spawn of Totoro님이 먼저 게시:
Besides that, any program you are running is often moved into the RAM anyways for faster access.
Yes, Windows Standby/Cache RAM could just use some way to hint at it what it should load and gamers wouldn't need a RAM disk.
Washell 2017년 6월 13일 오전 10시 54분 
- If it fits in the Ramdrive, the game is already so old the benefit of running it from RAM is negligible.
- If the game would benefit from it, it's so big the cost of having enough RAM would be prohibitive.

It's the Catch 22 I've observed for 25 years now. The idea is sound, but the cost of RAM would need to drop by several orders of magnitude within a generation.
Start_Running 2017년 6월 13일 오전 11시 13분 
Windows has actually had ramdrive functionality since windows 3.0.
It is, as said. One of those things that really sounds better on paper than in practice. The thing about a ramdrive is that the OS treats it just like another Disk drive. Not as ram. And again this is just going to shave a few seconds off of loading times.

Put it another way. If you have the funds for the amount of ram that would make this practical, you have the funds to set up 3 SSDs in a RAID 0 or RAID 1 configuration,
< >
13개 댓글 중 1-13개 표시
페이지당 표시 개수: 1530 50

게시된 날짜: 2017년 6월 13일 오전 2시 12분
게시글: 13