Introduction

Hi All,

You've found the blog of Leighly G Penrod (better known as Lee Penrod). Over the years I've helped thousands of people with technology questions. I started this blog to share some of the problems I've personally solved, and to act as a place to put bits of new articles before they are ready for release.

In the past I have written several articles which have been published by Directron.com. I have been writing since before 2001, and did a good enough job that in 2002 Directron hired me. I'm now CTO/Vice President of the company, and have personally setup, configured or repaired thousands of PCs, Servers, Laptops and other devices. My goal is to distil some of the that knowledge here as I have in the past in a friendly, easy to read format.

If you are not familiar with my prior work, please check out these popular guides I have written-

How to Install Front USB 3.0 Connections
What is PCI Express? A Layman's Guide to PCI Express

How to Install Front USB
(connecting front ports to the motherboard)

Building a Customized System
[ A general guide to picking parts for a PC ]
Understanding System Memory and CPU speeds:
A layman's guide to the Front Side Bus (FSB)

What is 1.5V AGP and .8V AGP
Building A custom PCPC Mod Dictionary
[An Older co-written article, but still has a ton of relevant info if your doing PC Mods]
How to build an AMD Based Windows 2000 System
Hooking up a Neon Light
[Old Article on making a card neon from Walmart work in a PC]

Tuesday, October 11, 2011

Ram Disk that works under Windows 7 64bit ( x64 ) and RAGE

Recent events that have been going on in the tech world:
1) Ram prices have been very very low.
2) The game RAGE by ID achieved a lot of hatred in a short period of time due to launch bugs that largely stem from poor memory management (the lack of using resources it has available).

The main issue with RAGE that gets talked about is texture pop in.  This happens because there is a lag between loading the texture, and you looking at it. Generally, well managed games are going to try to have as many textures that you might need soon in memory as possible. Rage just doesn't appear to do this effectively (at least as it was at launch), instead it will try and grab from disk and generally:  Slower drive access = worse pop in. Some people with RAID 0 SSD setups had very little pop in.

Now, don't get me wrong - the problems with RAGE arn't just based on disk access.  There are literally tons of fixes for it.  If you are having problems, definitely the first place to look is the steam forum for the game, however there are a few other things worth noting.

First of all, one of the early things figured out was that rage doesn't have the cache path set or created. As I understand it, this cache location is used as additional texture space -- so the path containing the cache should be as fast as possible. For some talk about the specific way to set the cache try this blog entry:
http://blog.fiveinchfloppy.com/articles/reviewing-rage/

Now, from my perspective, the smart thing to do here is not put the cache on your main hard disk.  The smart thing to do is to make a RAM drive / RAM disk for the cache.  Creating a RAM disk in Windows Vista and Windows 7 has for many lead to a challenging or at least somewhat expensive proposition, however a while back I figured out a free way to do it.

The best tool that I have found to do this is IMdisk. Grab it here:
http://www.ltr-data.se/opencode.html/

IMdisk is a swiss army knife kind of app. It can mount disk images and as well as having the awesome feature of making a blank ram drive @ a drive letter of your choosing.

The trick most people miss with making it work under Win 7 x64 is the step of running cmd as administrator and running the following commands:

sc config imdisk start= auto
net start imdisk

Installing IMdisk, and running those command line commands will activate IMdisk so that you can create a RAM disk from both control panel and from their command line version of the program. 

Basically, once you have the ram drive, you can write a script to create the ram disk that you can either have auto start when you boot the machine, or can run manually before opening RAGE. (of course you could do it by hand w/ the control panel app but that's a bit annoying).

Hopefully the above is enough to help you put 2 and 2 together.  If you have a lot of ram in your machine ( 12 GB or more) you could also make a more complex RAM drive setup to help things out.

It would go something like this:
1) Taskkill steam.
2) Create big ram drive. Format it NTFS
3) Copy all or part of rage to the ram drive.
4) Copy whatever you copied to the ram drive to a backup location somewhere on your hard drive (in case the PC gets shut off mid game).
5) Make a junction between the folder point you copied and the place you copied it to on the ram drive. (If done properly, going to it will go to the ram drive instead.
6) Start Steam.

After the script runs, steam will see no issues if this was done properly. Junction transparently handles the change in location of the files. The down side to this is that if Steam did an update to RAGE before you go t play it then the changes would be written to the ram drive (potentially) instead of to the hard disk. A way to avoid this is to make a shut down script for the machine, or a script to run after closing the game that would undo the ram drive process
(taskkill steam, remove juction using rmdir, copy ram drive contents back to origional location it's expected to be in, start steam, add a command to remove the ram disk if you want to free back up the ram.)

For some information on how to create a junction see:

http://technet.microsoft.com/en-us/library/cc753194(WS.10).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365006(v=vs.85).aspx


To remove the junction, use rmdir, don't use del, it could kill the files at the other end of the junction.

I hope that this has been helpful to improve your RAGE experiance. This trick is also useful for all kinds of other games, as forcing major textures or other files into ram can dramatically reduce load times.  If I have time I will try and make a more detailed guide at a later date.

Don't have enough ram to try and fancy version of this approach? Consider upgrading your RAM with parts from Directron.com.

6 comments:

  1. I just don't think I have the right computer to try this game out. I'm actually about to get a new computer and get rid of my old one. What kind will give the me the most ram, and allow games like this to play better? Do I need to destroy any personal information on my old computer before sending it to a computer recycling company?

    ReplyDelete
  2. For your own safety it is best to DOD wipe a PC before sending it to recycling. There's a fairly good article about that at:

    http://chrisdown.wordpress.com/2007/12/29/how-to-completely-wipe-a-hard-disk-ready-for-sale/

    You can make a bootable CD/DVD that can do the process of destroying everything for you. Mind you, when done everything and I mean everything (including the OS) will be gone.

    For A gaming machine for rage, that's a complicated subject. I'd pick nothing lower end than:

    http://www.directron.com/budgi5gamer.html

    If you picked that one and you wanted to do that ram drive trick, grab the option for 2x 8GB and one of the OS options.

    ReplyDelete
  3. hi..Im student from Informatics engineering, this article is very informative, thanks for sharing :)

    ReplyDelete
  4. Hello gays.
    This articles is very good
    I want share another Software
    You can download free here
    http://oxsoftware.blogspot.com/2014/07/ramdisk-440-rc-31-2014-free-download.html

    ReplyDelete