9

I know that RAM disks are fast, faster than any disk, but they lose their contents on a shutdown of the operating system. The capacity is limited to the RAM. Is there a useful implementation on a new 64-bit Windows 2008 server?

7 Answers 7

4

I am not sure about using a RAM disk for speed advantages, but they can be used to create a secure area. If you create a RAM disk and use it as a working area, any temporary/sensitive etc files created on it will go as soon as the machine is turned off.

4

RAM disks can slow down your system.

The cache gives you a lot of the advantages of a RAM disk. The more memory you allocate to other things (such as a RAM disk), the less that's available for the cache. And the cache speeds up pretty much everything that involves the hard disk on your PC, not just the stuff you put on the RAM disk.

On the other side, there's virtual memory. The more RAM you've reserved, the more likely your applications are to be repeatedly thrown out to disk.

This is one of the reasons why RAM disks pretty much died. Back in the days when people had maybe 1MB RAM, RAM disks were quite common (though more so on Ataris and Amigas than on PCs). Now they're rare, even though Microsoft has offered a RAMDisk (for free, IIRC) for a long time. This seems absurd, but that memory is much more of a carefully managed shared resource than it was back then. When people had 1MB RAM, you'd have been laughed at for suggesting that buying memory would speed up a PC - either the app would run in the space available or it wouldn't. Then, Windows 3 happened, and things changed.

That said, a RAM disk can be an advantage in special cases. Just make sure it's a genuine advantage, and not just you sabotaging the efforts of your O/S to run things faster.

EDIT Having said all that, I really should answer the question ;-)

imdisk is a good virtual disk driver, and the virtual disk can (optionally) live in system RAM. The installer supports both 32-bit and 64-bit Windows. It's supported on Server 2008, but check the notes as there are UAC issues.

1
  • 3
    Compiling large code bases is one of those areas where a RAM disk can make a huge difference. I just installed imdisk and my builds went from 5 minutes to 3 minutes (and a large part of the remaining time is svn checkout). Of course, I only needed to steal 2 GB from a 16 GB system, so YMMV. Jul 18, 2011 at 6:28
3

In some cases what everyone said is correct. In fact, it hasn't died out. It died out for a period, but it was brought back. The best combination you can do is the RAM disk and an SSD.

Most programs now have the ability to save on shutdown, so it migrates the data from the RAM disk to your SSD so none of your data is lost. To whoever said they don't know if it has speed advantages, the read/write speeds are up to 70 (more or less) times more than an SSD, but like you said, the problem of data deletion occurs.

There are somewhat large differences in speeds depending on what you're using the RAM disk for. Anything that requires an intensive read and write rate then RAM disk outperforms anything. Compilations, coding, data intense games (Battlefield 3 maps, Crysis, etc.), and stuff like that would benefit greatly from RAM disk vs. an SSD.

For example, a Minecraft Tekkit server is extremely data intensive. It's always generating areas, multiple directions, and in multiple parts of the map, always generating machinery, user data, plugin data, data logs, machinery energy, alchemist energy (extremely intensive, it gets so bad that server owners have to completely disable the mod), etc. Minecraft is infinitely generating the map and that will require A LOT of read/write speed.

RAMDisk is the best option for that. Pair it with an SSD for when you shutdown the computer/server, and it'll practically be instantaneous. Any application like that would benefit dramatically with RAM disk, so no, RAM disk isn't obsolete; it's being brought back if anything.

1
  • That wall of text could probably use some formatting.
    – rtf
    Nov 1, 2012 at 14:50
1

It's useful in a server environment when you have some files that are written to or read from very often - SQL databases for example - simply locate them on a RAM disk and these operations will be orders of magnitude faster!

They also have some uses in regular systems. For example, I have my system put its temporary files, my Firefox cache, etc. on a RAM disk, which dramatically speeds things up.

1
  • 2
    I think you're thinking of Solid State Disks, the OP is talking about RAM Disks, which are virtual drives in Memory. In the old days, if you had a system with a lot of RAM, you would create a Ram Disk, and use it for temp files, and the like. If you are running SQL Server, or any modern database, you are going to be better off giving the RAM to the Operating System, and letting the Database Manager lost the DB into RAM, that way the OS takes care of writing the data to the physical drive for persistence.
    – BillN
    Mar 17, 2010 at 23:58
1

RAM disks are often used on live CDs or floppy disks where you want to decompress data from the CD/floppy, but don't want to write it to any hard disk drive. A Linux live CD will tend to boot and run way faster on a RAM disk, because random file access is so slow on a CD.

RAM disks are also useful where you will be doing anything that has a lot of random access (obviously). Any program that randomly accesses thousands of different files will run much better if those files are on a RAM disk, where the seek time on a normal hard disk drive is eliminated.

0

A good time to use a RAM disk is to load an image on a disk or RAM that does not touch the actual hard drive. This would allow you to install a new OS or restore or "fix" issues with your current OS.

In many cases automatic installations and system restore disks are loaded via the network through a PXE system onto a RAM disk and then offloaded onto the virtual file system. Once there, you can make your changes, and reboot; once rebooted you would then boot into your normal environment.

0
  • There is SSD. It is not a RAM disk; it's persistent.
  • There is a RAM disk with RAM from your server, not so bad... proved good on Linux, better than OS cache management in many specific cases (web server, SQL temp,..)
  • And there is also a RAM disk like "IOFusion" or others, a RAM storage device on PCI extension. It is no persistent, for huge improvement of performance in high I/O traffic context. Very useful for huge database temporary tablespace or others high-availability services. It's generally installed in cluster's nodes...

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .