Get Your Free Subscription By Email:

Making Use Of Non-Addressable Wasted RAM On 32 Bit Systems

If you own a 32-Bit computer with more then 3 GB of RAM you must be knowing that your operating-system can only make use of roughly 3 GB RAM and rest remains unused because of memory addressing space limitation on 32 Bit systems, today I will be showing how you can make use of this wasted memory improving your computer speed significantly.

The best way to utilize this wasted memory and speed-up your computer is to use it as an RAMDISK, storing frequently accessed temporary files like system pagefile, temp-files and web-browser cache, since I/O operations to RAM is significantly faster then disk you will greatly benefit from using RAMDISK as a temporary file storage.

Windows RAMDisk

Follow the simple guide next to create a RAMDISK and use it to store temporary files.

  1. Download and install free Gavotte Ramdisk Utility.
  2. Extract the archive and launch ramdisk.exe.
  3. Click Install Ramdisk button.
  4. Installing The Ramdisk
  5. Once installed, configuration options will get enabled select disk-size and drive-letter as per your requirements, now select media-type as Fixed Media and click Apply button, this process will take few seconds to complete and a success confirmation dialog will get displayed.
  6. Configuring And Enabling Ramdisk In Windows
  7. You can now click OK and exit the application, the new RAMDISK will be now visible in My Computer.
  8. Windows Explorer Ramdisk
  9. The RamDisk can now be used as a regular disk-drive but keep in mind its temporary and any data on it will get lost on power-off, so better use it for temporary storage like pagefile, browser cache and temp file storage.
  10. To use RAMDISK as pagefile right-click My Computer and navigate to Properties -> Advanced -> Performance - Settings -> Advanced -> Virtual Memory - Change, now select the RAMDISK and set the pagefile.
  11. RAMDISK Pagefile

NOTE : If the utility fails to recognize full installed RAM capacity, simply enable the PAE mode in BOOT.INI and merge ram4g.reg registry file found in archive followed by an system reboot.

Comments

Nice software. I tried it on win xp. IT'S GOOD. Can you confirm does it work on Windows 7. Check my blog. http://beware-microsoft.blogspot.com/

good

Great tips.. yup, could it work in windows 7?

too bad

Myth - "Putting the Paging File on a RAMdisk improves performance."

Reality - "Putting a Paging File in a RAM drive is a ridiculous idea in theory, and almost always a performance hit when tested under real-world workloads. You can't do this unless you have plenty of RAM and if you have plenty of RAM, you aren't hitting your paging file very often in the first place! Conversely, if you don't have plenty of RAM, dedicating some of it to a RAM drive will only increase your page fault rate. Now you might say "yeah, but those additional page faults will go faster than they otherwise would because they're satisfied in RAM." True, but it is still better to not incur them in the first place. And, you will also be increasing the page faults that have to be resolved to exe's and dll's, and the paging file in RAM won't do diddly to speed those up. But thanks to the paging file in RAM, you'll have more of them. Also: the system is ALREADY caching pages in memory. Pages lost from working sets are not written out to disk immediately (or at all if they weren't modified), and even after being written out to disk, are not assigned to another process immediately. They're kept on the modified and standby page lists, respectively. The memory access behavior of most apps being what it is, you tend to access the same sets of pages over time... so if you access a page you lost from your working set recently, odds are its contents are still in memory, on one of those lists. So you don't have to go to disk for it. Committing RAM to a RAMdisk and putting a paging file on it makes fewer pages available for those lists, making that mechanism much less effective. And even for those page faults resolved to the RAMdisk paging file, you are still having to go through the disk drivers. You don't have to for page faults resolved on the standby or modified lists. Putting a paging file on a RAMdisk is a self-evidently absurd idea in theory, and actual measurement proves it to be a terrible idea in practice. Forget about it."

Even if the above theory is true, it is still helpful to store temp-files and browser cache for faster access.

Here is the full conversation about the issue :

http://forums.2cpu.com/showthread.php?s=1b1c4b97548e77eba73c3a77757fe3e0&p=63581#post63581

You decide !!

this utility might be useful for temporary internet files

Oh God,, Thanks after reading your article i better not use it. I have 1.5 gb ram and everything is running fine. Using Win XP SP3. Pentium D, D101 gcc mother board. Previously 512 KB ram i used. Then also it was sufficient.. So i think better not play with it.

So what about the Temp files and Browser cache. Can i use this ram disk for them. What are the problems in using them?

I think you are right if you are talking about a computer with less than 3GB of RAM. I think this utility is mainly meant for some of us who bought 4+ GB of RAM not knowing that XP-32 can only make use of 2-3 GB of it (I always thought it was only 2 GB but Megaleecher says it's 3 GB). I currently have a gaming computer that has 4 GB of RAM, with a XP-32 drive and a Vista-64 Ultimate drive. I'm probably gonna get rid of the glitchy, resource hog Vista and just put everything on the XP-32, so this utility will come in handy for me.

While the common "pagefile on a ramdisk" fallacy, or it's equally evil twin "ramdisk using virtual memory" are universally bad ideas, for the very reasons just described, this article is specifically about using "Non-Addressable" RAM. That is, RAM that the OS cannot use.

I have no idea how accessing the non-adressable ram for ramdisk use is done (or why, if the ramdisk driver can, the OS doesn't), but if it is possible, it sounds like an excellent idea to use such a ramdisk for a page file.

uh, did you even READ the article? The author doesn't tell you to commit your usable RAM for use as pagefile storage area, he tells you to use your UNUSABLE memory for pagefile storage. You're not decreasing the amount of available memory in that case. You're just making good use of the memory that would otherwise get wasted.

You are a complete jackass. This is about using non-addressable RAM and not committing usable RAM to the pagefile. Read the damn article before talking crap.

Obviously you don't know jack about computers. If the OS can create there a pagefile then it can also f*cking address the region;you end up wasting ram, DUMBASS

whoa, you are so wrong and impolite. were you stoned when you wrote that comment?

When a program needs ram and there is not enough, then there will be created is called pagefile to copy the data of the ram that are not in use, so if u put the pagefile in ram then you exactly is a pagefile not a pagefile anymore...

the above statement is for situation when you create RAMdisk in normaly accesible RAM, which is not this case as we are creating RAMdisk in unaccesible RAM instead.

its like eBoostR program making usb or hard disk storage device as ram

Superspeed.com has a paid version that uses the RAM over your 4GB 32 bit limit. I have 6GB of ram in my PC, now 2 GB is lost, so now I find it feasible to turn this wasted 2GB into a 6000 MB/s (not Mb) drive. Unfortunately I have not found freeware that uses the unrecognized ram.

But if I had 64 bit (x64) Windows, I wouldn't bother!

By GigahetzInc.com

Isn't it supposed to be NON ADDRESSABLE ram?

If the chipset is 32bits, no matter what software you use, it is IMPOSSIBLE to access more than 3+ GB of ram.

If the chipset is 64bits and the OS is 32, maybe it could work.

But if you have a 32bits WinXP it is very unlikely you have a 64bits chipset.

The RAMDISK software make use of PAE and system drivers to make use of non-addressable RAM.

But only if your limitation is your OS being 32bits (and your chipset is 64bits).

If your chipset is 32bits, there's no way you can access that non-addressable RAM. It's just not possible.

I might be wrong, I'm not really sure.

Just ignore it in case it is wrong.

Cheers!

PAE is a processor feature.

[Taken from the link below]
"Addressing physical memory above 4 GB requires more than the 32 bits of address offered by the standard operating mode of Intel (32-bit) processors. To this end, Intel introduced the 36-bit physical addressing mode called PAE, starting with the Intel Pentium Pro processor."

http://www.microsoft.com/whdc/system/platform/server/PAE/pae_os.mspx

http://www.geoffchappell.com/notes/windows/license/memory.htm

Your site is really ugly.

Since the days of DOS when I use to do programming, RAM Disk really speed up the compilations. Just make sure I don't forget to save the compiled work to my HDD.

Anyhow, as of the present day, now that I have 4GB and knowing full well that XP SP3 can only address 3 GB, this utility really helps, especially when I work with Photoshop.

Now I can have a 1 GB scratch disk whenever I need to work with PS. It's a great help to a professional graphic designer.

Thanks for the utility!

Does not work for non addressable space, just check the memory usage, it uses the system memory, not the non addressable space

I managed to get it working, using the unaddressable space.

First of all you must have PAE enabled
Go into System Properties if "Physical Address Extension" is displayed then its enabled, otherwise google it.

Secondly I needed to go into my BIOS and enable "Hardware Memory Hole"

Also for clarification placing the pagefile on the RAMDisk WILL speed up the system.
In effect you are making the previously unaddressable space, addressable and usable by the OS.
The links posted are from topics where people were using less than 3GB of RAM, therefore they were removing their previously addressable space for use as RAMDrive.

First, I must admit that much of this conversation is over my head. However, an application that does occur to me is cryptography. Here, it might be a big advantage to have all data and processing vanish forever once the PC is switched off. If this 'extra RAM' cannot be recognised by the OS, recorded or transferred, cryptographic processes would presumably be safe. It is just a thought. No doubt someone better versed in computing will tell me why my idea is hopelessly wrong.

Curiously enough, a Soviet Cold War cryptography calculator (basically, a glorified Casio) had a purge key to be pressed in an emergency. Might a RAM disk perform the same function?

Gavotte works on x86 Windows 7, so it ought to work on Vista, too. To use the RAM beyond 3mb, PAE *must* be enabled. I didn't change anything in my BIOS.

With PAE, the ramdisk indeed uses the RAM above 3 mb, inaccessible to 32-bit Windows 7. So, yes, the "Completely wrong" rant by Anonymous is ... wrong. Once configured, the Gavotte software runs automatically on following boots. I think it runs "outside of" Windows, since it's not running as a process, and I'm pretty sure it's not running as a service, either. Windows 7 still reports 3036 MB of physical memory, so it must be small.

After you configure it, you have to move things to the ramdisk. Move your virtual memory page file, or a portion of it. Move (all) your browser cache(s). Move your TMP/TEMP directories to it. Any other uses?

Gavotte is stable, but imperfect. It should use NTFS instead of FAT32, for file compression. It's not as well featured as some ramdisks. Windows has to recreate the page file on the ramdisk, since it doesn't save to/read from disk upon shut downs/boots. On my system, sometimes Windows chooses not to create a paging file on the ram disk, I guess since the bigger virtual memory page file on D: is sufficient. Once it's created, it remains until the next boot.

Browser usage SEEMS faster. It's nice to have a super fast scratch disk, and it's nice to use that gig of RAM that Windows was ignoring.

So I built a new PC, and have a licensed copy of XP Pro, and am using an ssd as my main system drive. Plenty of friends laughing at me for not just springing for win7, but I just don't have any need or interest to justify the $150+, so I'm sticking with XP. Ram is cheap, so getting 8gb wasn't that much more expensive than getting 4gb (20 bucks, maybe?). So Windows XP sees 4gb, and 4gb are unused.

Then I grabbed VSuite Ramdisk free, and make a ramdisk out of that unused 4gb. I put the windows page file, some graphics programs' temp and cache folders there, etc. I've read the windows documentation to get a loose understanding of why XP and programs can "see" the full 8gb, but not use it -- but I really don't care. All I know is that XP is using 4gb, and I'm able to put a bunch of cache and temp stuff on the ramdisk in the "unused" 4gb -- it's nice to think that now it's being used. And I've heard it's good to take that stuff off the main drive when that drive is an ssd -- which mine is.

Things it could do: boost performance, improve life of the ssd -- time will tell whether those pan out. Things it definitely is doing: make me feel like the ram I bought is all serving a purpose, make me feel cool for tweaking something.

Thanks for the article, btw!

Amazing idea! I'm very to know about how to use wasted memory improving of computer speed significantly. I'm interested to know more tips from you. Thanks a lot. Keep it up:)

Amazing idea! I'm very glad to know about how to use wasted memory improving of computer speed significantly. I'm interested to know more tips from you. Thanks a lot. Keep it up:)

I have Dell Vostro 1200 and Win7. and it seems that whenever I install this software, it gets the 1GB from the useable RAM leaving the 1GB unusable untouched. Can you help me?

I have an Athlon II X4 system with 6Gb of ram running WinXP SP3 32 bit. I therefore can not use around 2gb of memory. I tried this, and according to a memory monitor I ran both before and after using the ramdisk util, the RAMdisk is using memory from windows. NOT the unused memory, but the memory that you are usually using for programs etc.

It therefore is not using the "extra" "unused" memory, and actually would degrade performance but making your system run as if it had less physical RAM.

I have 8GB of RAM on a MoBo/CPU with 16GB capacity.

The POST verifies it is all there and working.

Memtest also sees the memory.

XP "sees" it in "System Information" <---- "Read" or "reported"...I don't know.

I made a 4GB RAMDisk successfully. I sure that wasn't "system RAM" or it would crash.

My RAMDisk program "Detected Memory above 4GB in a 32 OS environment". So it also knows.

If the Hardware is capable of accessing this memory, why cant a hardware driver?

I have not gone the next step yet and put swap file in it. I will report later

I have 6GB RAM, win xp recognizes 3GB, and then I wasn't able to setup a RamDisk for 3GB. However I managed to setup 2GB.
Didn't find any significant improvement on performance, but theoretically it should be faster so I'm sticking on it.

However I am wondering what will happen when we hibernate?
I almost never shutdown my machine coz it take such a long time to start-up (you know, it's Windows, I dare not expect much)

I succeeded in creating a 3.9GB RAM Disk on an 8GB system.

I used DATARam to create and disk manager to format. I also put some files on the drive.

I succeeded in using it for page swapping while i played 3D games.

I cannot yet prove a performance enhancement. HDTune benchmark was incredibly fast.

I also succeeded in playing some Minecraft with 1GB reserved.

All my "System Info" still showed the same 3.25GB of available RAM.

Conclusion is, "Yes indeed it works". If you have an application, like a game, that constantly reads files off the HDD, then putting these files on a RAMDisk should speed your application up.

Hi I believed no matter what type of Ramdisk software you use, still cannot facilitate any extra memory space if under 4 GB, please open the Resource Monitor in Vista or 7, under Memory tap the bottom shown the portions (in Bar) of memory used, at extreme left is hardware deserved. E.g mine is 769MB and total of remaining spaces consisted of In Use,Modified, STANDBY and FREE are 3327MB (installed 4GB), that figure tally with what Computer properties Shown, and if I apply 1GB to ramdisk, The HARDWARE DESERVED Bar remain unchanged at 769MB, the 1GB will take space at "in USE" portion means now only left 2327MB available for other internal use, that tells the ramdisk actually occupied the usable memory instead of that untouchable 769MB (some is around 1GB)portion, I had used DataRam software in my another 32 bit pc installed with 8GB ram, and they offer a function auto use for those memory that exceed 4GB, I used it and created a Ramdisk size about 4GB but still there is 1GB Missing as my pc itself only used 3GB, (And if follow the previous misconception it should be 8-3 = 5GB available for RamDisk). So if any body have ever succeed beyond above mention scene please kindly advise as I am also looking a solution or maybe some software to maximize my ram usage (I had tried the BCDEdit /set pae Forceenable command but in vain. Thanks, gim

Do NOT put a swapfile on a RAM-drive. It is absolutely pointless and other than one or two very specific edge cases, provides zero benefit.

When you put your swap file on a RAM-drive, you waste physical ram for the swapfile which could have otherwise been used for programs to avoid having to use the swapfile.

This is made much worse if the swapfile on the RAM-drive is only a complementary file since the system will always use the one on the system drive (and usually other volumes on earlier drive letters) before eventually getting to the one on the RAM-drive. You could disable all swapfiles other than the one on the RAM-drive, but not having a pagefile on the system drive has serious consequences (for one thing, it disables crash dumps).

If you want to reduce paging to disk, then you can disable the swapfile altogether by setting the pagefile on each drive to none; that way the system keeps memory in RAM instead of paging to disk, but of course this has its own rammifications (plus the system doesn’t immediately move program memory to disk anyway, it first moves them to another part of RAM).

Here is an explanation and discussion.

Wrong statement. It is advisable to put pagefile (which is basically a cache for PC) on other disk then "typical" C drive. You will notice quite big improvement of speed. You can even create few pagefiles. If you put them on few different RAMdisks - then you will really see huge improvement in speed, while CPU and HDD operational temperatures will be lowered extending their "life".
Amount of "caching" to the physical HDD will be much reduced, as majority of information will be processed in the memory.

Yes THIS IS such a case.

Please DO READ the article and don't just comment on comments to "show" your "greater knowledge", about how XP can only address 3.5GB and so on. We are actually concerned with putting a RAMDISK in the non windows addressable memory which is available as Physical Address Extension. Windows 32bit can't see this, but the RAMDISK program can see it. and a user can put his swapfile or temp files in there, and NOT affect the 3.5GB that Windows can see. - Got it?

Assuming that a user has a Mobo that has PAE and has more than 3GB of RAM installed. - Please Again READ The Article, and instead of yabbering drivel, download the program, install, and try it !

Everyone is talking about this RAMdisk allocation on the system. Yesterday I apply a simple way to prove whether this RAMdisk allocated from usable-RAM, or allocated from Non-Addressable Wasted RAM On 32 Bit Systems.

Before you continue, needed tool for this test is "Resource Monitor" brought by Windows 7. You can just run from Start menu by type "Resource Monitor", then go to Memory tab.
First of all, simply capture the bar of physical memory before and after you create the RAMdisk.
If you follow the instruction very well of this article, then you'll notice there's no difference between before and after you create the RAMDisk.
After that, to make sure again that those RAMDisk is allocated from Non-Addressable Wasted RAM, again.. simply put some large files into the RAMDisk drive while observing the "Standby" portion of RAM in Resource Monitor.
In my system, putting files with a total size of about 900MB makes the size of the "Standby" RAM is not reduced. This proves that the RAMDisk drive has really taken the allocation of Non-Addressable Wasted RAM On 32 Bit Systems.

Regards,
Fatchul Bari Hikmawan

If your intention is to make use of memory above 3GB on Windows 32bit, read on.

If you are running on 64 bit Windows or you don't have more than 3GB on 32 bit Windows,
I agree that placing your page file on a ramdisk is senseless.

Having said all of that...

System:
HP Laptop with Intel Core I3 M 370 Cpu
Toshiba 250GB hard disk
4GB of Ram ( 2+2 GB sticks )( originally 3GB, 2+1 GB sticks )
Running Windows 7 Professional 32 bit

The following is how I set up my system:

First, after extracting the zip file, on systems with UAC,
you need to "Run As Adiminstrator" ramdisk.exe
Click on the "Install Ramdisk" button.
Set the options for disk size, etc. ( The disk size should be at or below the amount of UNUSED memory you have above 3GB ). Click OK or Apply.

Then, merge the ram4g.reg. This adds a DWORD value to the registry. ( "UsePAE"=dword:00000001 )

From an elevated command prompt, type "bcdedit /set pae ForceEnable". Do not type the quotes. Press
.

Reboot.

I fully expected to get the infamous BSOD. That didn't happen. Amazing.
Windows Explorer now reports a FAT32 R: drive with the expected capacity.
I went to control panel / System / Advanced / Performance and deleted the page file on C:, then
created a new page file on the R: drive.
Reboot.

Still no BSOD.

I then tried to break the system by loading a massive Virtual Machine using VBOX.
This VM runs Windows 7 Ultimate X64 (guest) on my Windows 7 Pro X32 (host).
I figured if anything would break this code, that would do it.
Then I loaded Visual Studio 2012 in the VM to further use memory in the VM.

Still no BSOD. I am impressed!

Other thoughts:

Boot time was not improved noticably. But I expected that.

My computer is somewhat more responsive. But I have not come up with a
good way to actually benchmark it.

The comments and links above that say that this a bad idea are missing the point.
The memory used in this way IS NOT taken away from Windows 32 bit, rather it is memory that
Windows won't use anyway. EVER.

Look at the heading of this thread.
"Making Use Of Non-Addressable Wasted RAM On 32 Bit Systems"

https://skydrive.live.com/redir?resid=7B04935E44DF0879!157&authkey=!ALPwHr3riijJWRI&v=3&ithint=photo%2c.JPG

I think XP 32 can use more than 3GB exactly (like 3.4 or 3.5 GB), I imagine 7 would too?
Did your RAMDISK software make a 1/2 to 3/4 GB drive?
What software did you use to create the RAMDISK?

Heres the interesting thing: Try a DISK performance test on that drive!
If I remember, I got like >4,000MB/s reads & Access time was almost instant.

I dont know about a small RAMDISK drive like yours but, In my case, I have >4GB of wasted RAM. I also have game apps that were coded for HEAVY HD usage. Example: A game with HUGE MAPS, Lots of Textures, or lots of A.I. Characters that need to be swapped on and off the HD in REAL TIME (Not "between sceens" or "between levels"). This causes annoying studdering in game using slow HDs.

I ALSO expect your boot time would NOT change. In fact, it should actually get a little longer!
You do not have a RAMDISK at all until Windows is fully booted, your new RAMDISK drivers load, and then the space is allocated (or filled with data).

I did not try this with Windows XP. I can't use XP because I now have some hard drives that use 4k physical sector sizes and MS recommends to not use XP to access these drives.

Windows 7 Pro 32bit reports 3040MB of memory on my 4GB machine, leaving ~1GB of wasted memory. This number may vary with SP1 or various updates/patches.

My ramdisk size is 1023MB, using the Gavotte ramdisk listed at the beginning of this thread.

I use HD Tune Pro for benching hard drives and oddly enough, it does not list my ram drive. Neither does a hard drive utility that I am writing myself, although I know it is possible to enumerate all devices. It might be that changing the disk type using the ram disk utility software could make a difference, but I have not tried that. Anyway, I suspect the numbers would be impressive.

The rramdisk.sys driver loads early in the boot process as shown by SysInternals LoadOrd utility. I don't see any indication that a temporary page file was created as someone mentioned.

I am happy with the performance increase that my system has shown using the ram disk.

Add new comment

This is just one of the many helpful tips we have posted, You can find more stories here,
Do subscribe to updates using your favorite RSS feed reader or using the secure FeedBurner email update form on top of this post.