Memory Upgrade: Is It Time To Add More RAM?

32-Bit: Bottlenecks, Tales, And A Trick

Mistakes, tales, and things that definitely don’t work

Once and for all, the 32-bit (x86) versions of Windows XP, Vista, and 7 cannot handle more than 4 GB of RAM. PAE modes, registry hacks, and different boot options will definitely not produce the desired result. In fact, these have the potential to cause system instability and crashes.

We know that a 32-bit application only can address a maximum of 2 GB of RAM and that 32-bit Windows systems can actually handle just 3.25 GB (or even less if more than 4 GB of memory is installed). Windows Vista and 7 will show the full 4 GB in the System Info, but the "missing" RAM is reserved by the system for hardware that might be incompatible with 64-bit systems. Also, a portion of the system memory is needed by the graphics card, although the size of this portion is not the same as the size of the graphics card's video RAM. This is another misconception we'd like to dispel.

All graphics cards have a simple memory management unit called the GMP (graphics memory page table) on PCIe cards or GART (graphics address remapping table) on AGP cards. These are used to map different pages of the system memory into the address space of the GPU. This results in subsets of system RAM memory pages being accessible for the GPU at any time. Conversely, the video RAM must be addressable by the system.

The amount of system RAM utilized by this mapping process depends on the total capacity of the memory on your graphics card, which must be almost identical to what's available in system RAM. However, the memory capacity required for this mapping function is still a bit smaller than the actual capacity of the graphics memory. Finally, the amount of memory reserved for graphics also depends on the capacity of the system memory buffer that can be used by the video card as an external frame buffer for graphics purposes.

A common misconception found occasionally on forums is that the entire graphics card memory is always mirrored in the system RAM. This is not true.

The swap file trick: when RAM alone is not enough

The term "swap file" (or page file) refers to a file on a storage medium, such as a hard drive, used by the system in case it needs a larger address space than the available memory in physical RAM. Swap files prevent overflows and memory deficiencies. The operating system manages the memory such that data needed by active processes are typically stored in the faster RAM.

In memory-critical situations, there is a risk that all of this data won't be physically accommodated in system memory. Of course, this depends on the amount of physical memory installed. The system uses the following work-around: the addressable system memory is expanded and any data overflow is redirected to the swap file. Think of it as hard drive space that complements system memory. The RAM and swap file together are referred to as virtual memory, indicating the total amount of memory actually available when needed.

Windows is smart enough to store data from minimized applications or idle applications in the swap file so that active processes can access more RAM. The disadvantage of this solution is obvious. The performance of a mechanical hard drive is only a fraction of the throughput realized with memory modules. Solid state drives (SSDs) are an improvement, but the general problem remains. Frequent swap operations are poison to an SSD, possibly decreasing its speed.

However, by using a swap file, we can extend the virtual memory size to 8 GB or more, even in 32-bit versions of Windows. Doing so simply sacrifices speed, since "mechanical" RAM is seriously slow.

A simple solution

What if it were possible to use physical RAM like a hard drive and thus cross over the magical 4 GB limitation? You can do this by creating a so-called RAM disk from your system memory and then storing the swap file on it. The system will interpret the RAM disk as a normal hard drive, not noticing the physical difference. This way, if you have 16 GB of physical RAM installed, you can add an additional 12 GB to the 4 GB recognized as system memory.

Although this virtual memory is based on memory modules, it will be slower than directly-accessible RAM in a 64-bit system because data will have to be copied from the swap file to the RAM before it can be used. This is sometimes a good compromise, as the approach is much faster than any swap file on a hard drive. To take advantage of this tweak, you'll need some suitable RAM disk software. Check out the next couple of pages to see how we outsmart the system and boost our 32-bit Windows installation using this approach.

  • doyletdude
    Hmmm... i'm concerned because i use triple channel so i'm currently at 6gb, which is under recommendation however to upgrade to 12gb might be to much, especially since i've heard that using more RAM slots negativley affects overclocking stability.
    Reply
  • Lutfij
    awesome read for the masses, thanks Tom!
    Reply
  • hmp_goose
    I, too, run an X58 chipset, with Win7-64, and don't know what this article is telling me . . .
    Reply
  • holygigi
    Finally a good read on Tom's, not a news about a rumor that a fruit company might provide a tease about something shiny.
    I use 8GB for about 2 years now, the best thing about it (and I didnt find this covered in the article) is that alt+tab-ing out from a game to windows and back to the game is almost instant. Even the hungriest game uses about 3-3.5 GB. Windows again about 2.5. So you always have 2GB free. Even though I dont have a SSD yet, after the initial slower start of an app (browser, anything), going back to it is instant. For me this is the real benefit of having more ram. The marginal (if any) FPS increase is not the main selling point. Multi-tasking is.
    Reply
  • takeapieandrun
    Personally, I would say 6GB is nice balance between capacity and cost. 4GB of RAM can become limited at times, but IMO 8GB is a little too much.
    Reply
  • dogman_1234
    Nice article. I finally learned something i can be able to use later in my computing life.

    My questions are as followed:

    1) I am aware SSD's are a applied RAM set. So how can one use your system RAM to store files after shutdown as well.

    2) How can one add more memory to the GPU? I can see a noticeable jump in GPU RAM, or GMP as they put it.
    Reply
  • rags_20
    Is the RAM loaded on an actual model of the truck?
    Reply
  • coffee_man
    i use triple channel but i only got 3 gb of ram, is better to add more ram or buy an ssd ?
    Reply
  • Niva
    Come on guys, the article and recommendation are pretty straight forward. They're recommending a minimum of 8 Gb and if you have less you might want to consider upgrading.

    That being said, if all you do is interwebs and some gaming you should be careful where you spend your money. Big ram is for programs that use a lot of ram, if you're doing heavy 3d modeling/animation, large photoshop files now that CS5 actually has 64 bit products it's justified. For games it's a crapshoot.

    I say stay with 6 Gb unless you see your ram usage over 50% regualrly.
    Reply
  • quizzical
    So basically, the conclusion is that slow hard drives are slow, which really doesn't say anything about system memory. What happens if you try running the programs off of a good SSD? Having an SSD in your system, but not putting any programs or even the swap file on it seems like a rather strange configuration.
    Reply