Using a RAMDisk for disk cache (Windows)
A Ramdisk is a disk drive that stores data in your computers memory (very fast) rather than on a physical disk drive (very slow). In a nutshell, you are sacrificing some of your computers memory in exchange for a very fast virtual disk drive. Second Life uses a disk cache to help speed up rezzing of repeat locations, placing this cache in a ram drive will dramatically boost it's performance.
This will not speed up the loading of locations the first time you visit them.
This is especially useful if your computer uses a solid state drive (SSD) as it will reduce the frequency of physical disk access and extend the life if your hardware.
This guide is written for Catznip running on Windows 8 64bit. Other viewers / Windows versions should work without issue but YMMV.
When RAMDisk is running you are always exchanging memory for virtual disk space. Clearly this isn't ideal unless you spend all your time in SL! <sheepish grin>. So it's recommended that you place a shortcut on your desktop to the RAMDisk configuration utility and remember to enable / disable it as you need.
RAMDisk does not support command line options and for the moment I have no way to automate this so it starts and stops with your SL client.
Please make sure you do one of the following so your computers memory isn't needlessly keeping the SL Cache loaded when you don't need it.
- Unless you have ALL the memory, a RAMDisk cache will be much smaller than a pure disk based cache. Running a Squid Proxy Cache can make up for this.
- Write a post it note reminding you start and stop RAMDisk as needed.
- Spend all your time in Second Life and negate the need to remember anything (Recommended).
If you do not meet the following requirements then this article is not for you and will hurt your system performance.
- 8GB Memory or more.
- A CPU with more than 1 core (or more than 1 CPU).
There are several options for creating a ram disk on windows, for this guide we will be using the freeware version of RAMDisk from dataram. It has the advantage that the ram disks contents will be saved to your hard drive between sessions and the freeware version allows drives up to 4GB in size. you will need to remember to start and stop the RAMDisk.
- Download and install the freeware version of RAMDisk from here. Installation is very straight forward, just click next a lot.
- Once installed start the RAMDisk configuration utility from the start menu, or on Windows 8 press start and type 'ram' and it should show up.
- DO NOT press start RAMDisk just yet.
How big a disk to use?
There is no easy answer to this question as a lot depends on your personal computer usage, how many applications do you run at the same time, how much memory do you have (For reference the Catznip Second Life viewer will never use more than 4GB of memory when running on a 64bit OS, it's very rare for it to exceed 2GB).
As a rough guide if you have 8GB of memory, then allocating 2GB for the ram drive should be fine. 16GB of memory and you can allocate the full 4GB supported by the freeware version (or upgrade RAMDisk and use the SL maximum of 10GB) without issue.
- Enter 2048 for a 2GB ram disk (yay for geek ocd).
- Leave unformatted selected. We will be using NTFS.
- Enable loading and saving of the ram disk between sessions, this way your cache wont get lost when you reboot or turn off the ram disk.
- No idea why there are seperate file name options for loading and saving, just set them both the same and make sure you have enough space on the physical drive to save the disk image.
- Do not create a backup, there really is no need. you're not going to loose any sleep if something goes wonky later and you loose your SL Cache.
- Now press Start RAMDisk. You will get a pop up stating that loading has failed and something about an unformatted disk. Just press OK.
- Go to the Load/Save tab and press Save Disk Image Now, A dialog will pop up, pick and choose somewhere to save the RAMDisk.img file (assuming you named it the same as in the above screenshots). The default is fine.
Formatting the RAMDisk
Because Windows see's the RAMDisk image as a regular disk drive, it needs to be formatted just like a regular disk. For this you will need the Windows Management Console.
- Press the Windows key and E together this will open Windows explorer.
- Right click on Computer and pick manage.
- In the application that pops up, select Disk management from the left hand column. If you get the following pop up, just tick the box, select MBR and press OK. (The Disk might not be Disk7, it's not important.)
- From the list of Disks in the lower central panel, find the one with a black header marked as Unallocated, right click and pick New Simple Volume.
- A wizard will open up, press next twice' and set the drive letter. I'm going to be using Z:, Next once more and set the volume name tp SL Cache then Next and Finish.
- Close the Windows Management Console because you're all done.
- Start up Catznip (or your SL viewer of choice), open the Preferences and go to the Advanced tab.
- Set the Cache slider to just below the size of the disk you created above, press browse and select the drive you created above. It wont show up immediatly, just press OK and restart Catznip.
- Once Catznip has restarted open the prefs again and it should look something like this.