ImDisk -- open source RAM drive with no size limitations - Overclock.net - An Overclocking Community

Forum Jump: 

ImDisk -- open source RAM drive with no size limitations

Reply
 
Thread Tools
post #1 of 57 (permalink) Old 08-07-2011, 08:41 AM - Thread Starter
Iconoclast
 
Blameless's Avatar
 
Join Date: Feb 2008
Posts: 30,086
Rep: 3134 (Unique: 1869)
I've searched high and low for freeware or open source RAM drive programs, but in general all the free one were either very incomplete and required heavy manual editing/compiling of files, extensive use of the command line, or had arbitrary limits on drive size that made them useless.

I was willing to pay for a full featured program, but many of these had arbitrary OS restrictions, and since I'm using server OS, I would have had to spend hundreds or thousands of dollars to get something like SuperSpeed's RamDisk 11. I was about to purchase Dataram's RAMDisk (and it does have compelling features for the price), when I stumbled upon ImDisk (http://www.ltr-data.se/opencode.html/#ImDisk).

ImDisk is a virtual disk driver with the ability to create and copy images to system memory. It has a signed 64-bit driver and no practical limit on disk size. It's easy to install (a bit harder to remove) and extremely lightweight.

I've been using ImDisk and a variety of images I've created to really put to use the 24GiB of RAM I've got in my primary system. I have images for my games, which all but eliminates streaming pauses and significantly reduces load times. I run my smaller virtual machines from RAM disk images, making response virtually instantaneous. Basically, anything that is disk limited that I can fit into about 20-22GiB I can vastly speed up by dumping into a RAM drive.

Disks can be created and mounted on the fly, and formated as you would any other disk. You can back them up to image files and mount them later, with their contents intact.

The biggest downside is that you have to do everything manually. The program is not hard to use, but it's not automated in any way. Still, for the price of zero, I'm pretty damn impressed.

This is the interface:
imdisk_interface.png

And here is a bench of the disk I put Crysis on:
ImDisk_bench.png

As you can see it's more than an order of magnitude faster than good SSD; access times are also in the nanoseconds.

...rightful liberty is unobstructed action according to our will within limits drawn around us by the equal rights of others. I do not add 'within the limits of the law,' because law is often but the tyrant's will, and always so when it violates the right of an individual. -- Thomas Jefferson
Blameless is offline  
Sponsored Links
Advertisement
 
post #2 of 57 (permalink) Old 08-07-2011, 08:48 AM
New to Overclock.net
 
jellis142's Avatar
 
Join Date: Apr 2010
Location: Pendleton, OR
Posts: 6,337
Rep: 277 (Unique: 245)
With the price of RAM, I don't think it's crazy to max it out anymore, especially with those results.


jellis142 is offline  
post #3 of 57 (permalink) Old 08-07-2011, 09:04 AM
New to Overclock.net
 
Join Date: Jun 2009
Posts: 3,037
Rep: 353 (Unique: 312)
It's good to see that someone finally made a free ramdisk program. I'll use this next time I need a ramdisk.


Angmaar is offline  
Sponsored Links
Advertisement
 
post #4 of 57 (permalink) Old 08-07-2011, 09:50 AM
New to Overclock.net
 
kremtok's Avatar
 
Join Date: Feb 2008
Location: Homer, AK
Posts: 5,183
Rep: 369 (Unique: 298)
Looks very promising. How long does it take to mount / unmount an image from your hard disk? We can't play Crysis all the time, and it looks like this can't be used to install a primary OS, so I'd imagine you spend a bit of time swapping virtual disks.

Reason. Purpose. Self Esteem.
My Little Pony: Overclocking is Magic!
XBox Live Gamertag: Kremtok



kremtok is offline  
post #5 of 57 (permalink) Old 08-07-2011, 09:58 AM - Thread Starter
Iconoclast
 
Blameless's Avatar
 
Join Date: Feb 2008
Posts: 30,086
Rep: 3134 (Unique: 1869)
Quote:
Originally Posted by kremtok;14496586 
Looks very promising. How long does it take to mount / unmount an image from your hard disk? We can't play Crysis all the time, and it looks like this can't be used to install a primary OS, so I'd imagine you spend a bit of time swapping virtual disks.

Depends on the speed of the disk you are copying the image to/from. It's pretty much a straight function of your drive's sequential read/write speed.

At 250MiB/s either of my RAID 0 arrays can load a 12GiB image in under a minute, and most games in under 30 seconds.

I usually make my images as small as practical, have multiple ones mounted, and swap them as little as possible.

...rightful liberty is unobstructed action according to our will within limits drawn around us by the equal rights of others. I do not add 'within the limits of the law,' because law is often but the tyrant's will, and always so when it violates the right of an individual. -- Thomas Jefferson
Blameless is offline  
post #6 of 57 (permalink) Old 08-07-2011, 04:19 PM
New to Overclock.net
 
Kramy's Avatar
 
Join Date: May 2005
Location: Canada
Posts: 9,523
Rep: 1075 (Unique: 804)
Hmmm... +60 seconds to load Crysis - and a fairly manual procedure. Handy if you have specific things that need to be fast, though.

Downloaded/archived, for when I get more memory. smile.gif


Have you looked into FancyCache? It's in beta right now. It's a block level cache, so repeat reads and writes get cached to RAM. Try it out and run some benchmarks. I don't have enough RAM to give it a fair shake, but with a 16GB cache I'm sure it'd be awesome. biggrin.gif

http://www.romexsoftware.com/en-us/fancy-cache/
http://www.romexsoftware.com/en-us/fancy-cache/help.html
Kramy is offline  
post #7 of 57 (permalink) Old 08-07-2011, 06:48 PM - Thread Starter
Iconoclast
 
Blameless's Avatar
 
Join Date: Feb 2008
Posts: 30,086
Rep: 3134 (Unique: 1869)
Yeah, ImDisk is pretty basic. Still, I'm getting quite a bit of use out of it.

FancyCache looks superficially similar to what Windows already does by, but I see there are extensive customization options. It might be worth a look, but I would prefer a free/open program.

...rightful liberty is unobstructed action according to our will within limits drawn around us by the equal rights of others. I do not add 'within the limits of the law,' because law is often but the tyrant's will, and always so when it violates the right of an individual. -- Thomas Jefferson
Blameless is offline  
post #8 of 57 (permalink) Old 08-07-2011, 07:46 PM
New to Overclock.net
 
Kramy's Avatar
 
Join Date: May 2005
Location: Canada
Posts: 9,523
Rep: 1075 (Unique: 804)
Quote:
Originally Posted by Blameless;14501868 
FancyCache looks superficially similar to what Windows already does by, but I see there are extensive customization options. It might be worth a look, but I would prefer a free/open program.
Not even close.

It's a block level cache, rather than file caching... they each have their own merits, and they can work side by side if your usage requires it.

Without FancyCache unzipping Sun Javadocs takes about 40 seconds. With it, it takes ~4 seconds. Even an SSD can't touch that. Writes are suddenly the speed of RAM. I can pause/save huge VMs in seconds flat, then it slowly drains to drive/array in the background.

asssdv16401339530fancyc.png
crystaldiskmarkv30150mb.png
hdtuneproahcirandomacce.png
Kramy is offline  
post #9 of 57 (permalink) Old 08-08-2011, 09:11 AM - Thread Starter
Iconoclast
 
Blameless's Avatar
 
Join Date: Feb 2008
Posts: 30,086
Rep: 3134 (Unique: 1869)
Very interesting.

What's CPU utilization like, especially during large writes? How is disk I/O managed as things are moved to the drives? Any slowdowns?

I've noticed that Window's cache (or maybe Intel's write back cache is responsible) will let me save or write large files much faster than my drives are actually capable of, but that there is a noticeable slow down until things are actually finished writing to the disk.

...rightful liberty is unobstructed action according to our will within limits drawn around us by the equal rights of others. I do not add 'within the limits of the law,' because law is often but the tyrant's will, and always so when it violates the right of an individual. -- Thomas Jefferson
Blameless is offline  
post #10 of 57 (permalink) Old 08-08-2011, 04:57 PM
New to Overclock.net
 
Kramy's Avatar
 
Join Date: May 2005
Location: Canada
Posts: 9,523
Rep: 1075 (Unique: 804)
Quote:
Originally Posted by Blameless;14507752 
What's CPU utilization like, especially during large writes?
Couldn't say. With 3000MB/sec write speeds, I can't tell you what's good or bad. tongue.gif It seems to nearly max out one core when benching in CrystalDiskMark.
Quote:
Originally Posted by Blameless;14507752 
How is disk I/O managed as things are moved to the drives? Any slowdowns?
Depends. You can tweak it to have whatever behaviour you want. On one drive I use a short but large write buffer for FRAPS recording. It lets me grab close to a minute of footage at 2048x1152 on a lowly WD Green, but it tries to dump it to disk as fast as possible. biggrin.gif

On my OS drive I use "write averaging", which apparently leaves gaps between writes for reads to take place. It continually adapts based on the average access time. Even when huge copies are taking place, my web browser and stuff remain fairly responsive.
Quote:
Originally Posted by Blameless;14507752 
I've noticed that Window's cache (or maybe Intel's write back cache is responsible) will let me save or write large files much faster than my drives are actually capable of, but that there is a noticeable slow down until things are actually finished writing to the disk.
Definitely write-back cache.

This does the same thing. After unzipping Sun Javadocs in 4 seconds rather than 40 seconds, the drive is slow for a good 15-20 seconds afterwards. (presumably it's writing tons of small files to the drive)

For some tasks the difference is enormous.
Kramy is offline  
Reply

Quick Reply
Message:
Options

Register Now

In order to be able to post messages on the Overclock.net - An Overclocking Community forums, you must first register.
Please enter your desired user name, your email address and other required details in the form below.
User Name:
If you do not want to register, fill this field only and the name will be used as user name for your post.
Password
Please enter a password for your user account. Note that passwords are case-sensitive.
Password:
Confirm Password:
Email Address
Please enter a valid email address for yourself.
Email Address:

Log-in



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Show Printable Version Show Printable Version
Email this Page Email this Page


Forum Jump: 

Posting Rules  
You may post new threads
You may post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off