You are here

RAM Limitations

Even if you pack your PC with a full 4GB of RAM, you may only be able to access between 3GB and 3.5GB of it, and a single application is normally limited to using just 2GB. We explain why, and what you may be able to do about it...

With the current low pricing of RAM, lots of musicians are installing more than the typical 2GB in their PCs. Windows Vista 64-bit supports up to 8GB in its Home Basic version, while Vista Home Premium 64-bit ups this limit to 16GB (assuming you have a motherboard that can accommodate this much in its RAM slots!).

However, the vast majority of musicians are still running Windows XP 32-bit (with a small percentage on the newer Vista 32-bit version), and while these both officially support up to 4GB of RAM, in practice Windows will only declare somewhere between 3GB and 3.5GB as available for use, and of this only 2GB will normally be available to a single software application. There are two distinct mechanisms behind these two 'RAM ceilings', so here's some background information that should help sort out the confusion.

Where's My RAM?

First, 32-bit operating systems such as Windows XP Home/Professional/Vista use a memory system based around a maximum of 4GB of address space (two to the power of 32 is 4.2 billion, or 4GB). However, within this memory address space the BIOS allocates some of the addresses to I/O devices, so that a device driver can control the device by reading and writing specific memory locations as if they were normal RAM — but actually those instructions access the device directly.

This 'memory mapping' is a hardware standard that enables software developers to communicate more easily with hardware devices, and is used on most computers, including those running processors from Intel, AMD and VIA, so 4GB 32-bit limitations will affect the latest Intel Core Duo-based iMacs running OS X, as well as PCs running Windows or Linux.

On a PC, most of this hardware stuff gets mapped in near the top of the 4GB address range, so if you install 3GB or less of system RAM you'll normally get to use nearly all of it for running Windows and its applications, as we've all been doing for many years. However, once you install the full 4GB of physical RAM, the addresses used by hardware devices now conflict with some of the higher RAM addresses, so while your BIOS will usually display the full 4GB of RAM, Windows may report considerably less available for system use.

Hardware devices that may eat away portions of the 4GB memory address total include every motherboard device, graphics cards, and other expansion cards, including PCI or PCIe audio interfaces and DSP cards such as the UAD1 and Powercore. You can study the hardware memory addresses for your PC inside Device Manager by selecting 'Resources by type' in the View menu (see screen shot opposite). Windows also commandeers a chunk of addresses for its own internal use.

After installing 4GB of system RAM, the final available figure reported by your operating system may therefore be anywhere between 3.6GB (about the highest figure I've seen reported) and possibly as low as 3GB for a PC stuffed to the gills with hardware expansions.

Freeware Spotlight: Voxengo TubeAmp

Despite a slightly garish interface, Voxengo's freeware TubeAmp plug-in offers a wide range of sophisticated tube sounds, ranging from warm and expensive valve amps through to more obvious overdrive and distortion effects.Despite a slightly garish interface, Voxengo's freeware TubeAmp plug-in offers a wide range of sophisticated tube sounds, ranging from warm and expensive valve amps through to more obvious overdrive and distortion effects.There are quite a few freeware tube plug-ins around, but many are rather crude in both appearance and sound. None provide 100 percent perfect expensive tube/tape equipment recreations (which must be reassuring to those who invest in the original hardware!), but some nevertheless manage to add a certain magic, fattening and thickening drums, percussion and bass, adding body or sparkle to vocal recordings, improving the sounds of tone-wheel organs and electric pianos, adding richness to guitars, or even enhancing entire mixes.

To my ears, one of the best freeware offerings is Voxengo's TubeAmp (www.voxengo.com). Although the garish op-art interface suggests that it's a toy, it manages to turn in some sophisticated sounds and offer total control over both even and odd harmonics, yet has an almost complete absence of the low-level artifacts that are evident in many competitors. With just four rotary knobs for Drive, Tube, Bias, and Out Gain you can achieve a wide range of subtle tube effects, as shown by the large number of presets on offer.

If, for instance, you want to hear the effect of second-harmonic distortion alone, just push Bias up to 100 percent and vary the Tube control. To hear mostly third-harmonic distortion, reduce Bias to zero and turn up the Tube control to 0.75. I particularly liked the Warm preset, which did exactly what it claimed, especially on acoustic guitars and drums. These are subtle effects, not unlike high-class valve amps, but you can also push TubeAmp's sound with more extreme settings if you want obvious fattening, overdrive, or distortion. Recommended.

New Maps Of Memory

The reason I qualified the above figures with the word 'may' is that many motherboards have a BIOS feature named 'memory remapping' (aka 'memory hoisting'). Without getting into too many complicated explanations, essentially this is a clever workaround that makes it possible to map some of the missing RAM segment higher up beyond 4GB, where it will not conflict with any I/O device address, so its contribution to system RAM is returned to the pool (if you want a more in-depth technical discussion of the details behind memory remapping and 4GB support, Asus provide a handy PDF guide on their web site (http://dlsvr01.asus.com/pub/ASUS...).

Some motherboards provide memory remapping as a BIOS option, and enabling it may suddenly let Windows see significantly more of your 4GB installed RAM. Others implement it automatically, so even when installing (for instance) multiple UAD1 cards you won't see any reduction in available memory from Windows caused by the need for additional I/O address space. However, some cheaper motherboards primarily intended for consumer use don't feature remapping at all, on the grounds that few consumers are likely to need more than 3GB of RAM, in which case you may see your available RAM drop each time you install extra hardware, and you won't be able to claw back any of your missing memory at all.

You can sometimes track down details of individual memory remapping implementations in motherboard manuals. However, often the only real way to find out whether or not it's worth installing more than 3GB of RAM in a particular motherboard, when running a 32-bit Windows operating system, is to check with someone else who's already done it (the SOS Forums are a good place to try). Hidden factors like this may also explain why DAW builders seem somewhat conservative in their motherboard choices — they need to know which make and model works well with 4GB or more RAM, so that their customers have this option.

The bottom line is that however much RAM you've installed in your PC, the full amount should be reported in the BIOS, but if you install more than 3GB, Windows XP and the initial release of Vista 32-bit will report a smaller figure than is actually available to the operating system. Confusingly, Vista 32-bit with Service Pack 1 now reports the full amount of physical memory installed (in line with the BIOS figure). Microsoft also cryptically state (http://support.microsoft.com/kb/...) that "to avoid potential driver compatibility issues, the 32-bit versions of Windows Vista limit the total available memory to 3.12 GB".

The 3GB Switch

The 3GB switch is an entirely separate issue that controls the allocation of virtual memory in 32-bit systems. By default, Windows allocates the lower 2GB of the 4GB virtual address space to applications (the User Mode region), and reserves the other half for Window's own system use (Kernel Mode).

By selecting Resources by Connection in the View menu of Device Manager, you can see which parts of your 4GB address space are occupied by hardware devices.By selecting Resources by Connection in the View menu of Device Manager, you can see which parts of your 4GB address space are occupied by hardware devices.Windows' memory management system then 'virtualises' memory, such that each application apparently has up to 2GB of memory available to it, regardless of how much physical memory actually exists (once an application runs out of RAM, further data is stored on your hard drives in the page file, which is when performance starts slowing down). Windows also isolates the applications from each other, so that if one misbehaves it can't cause any of the others to crash.

If you're running several applications simultaneously, this memory allocation mostly works well, but when your entire PC resources are devoted to a single audio application with lots of samples that need to be loaded, it may struggle with the 2GB address space limitation. By adding a '/3GB' switch to your Windows XP Boot.ini file you can force your PC to allocate up to 3GB to programs, leaving 1GB for Windows Kernel mode (as I discussed in PC Notes May 2005).

Even when this switch has been added, however, only applications that have been compiled with their LAA (Large Address Aware) header flag set can take advantage of the extra RAM. Apparently, it's possible for advanced users to enable the header flag in question using Microsoft's Editbin.exe tool, supplied with the Visual Studio v6 development software, but I've not tried this myself.

Few developers mention whether their products have the LAA flag set, but I do know that Steinberg's Cubase SX, Cubase 4 and Nuendo, Spectrasonics' Stylus RMX and Mackie's Tracktion all do, and that Tascam's Gigastudio doesn't. Moreover, Gigastudio runs a lot of its code in Kernel memory, so using the '0/3GB' switch might actually reduce the amount of RAM available to it!

If you want to avoid this kind of 4GB jiggery-pokery, Windows Vista 64-bit is the way to go — assuming that you have a 64-bit processor, a motherboard chip set that supports at least 8GB of address space and has BIOS 'memory remapping' features, and that all your hardware has the required 64-bit drivers available. You'll also need a sequencer application that supports more than 4GB of RAM, preferably written as a 64-bit application and with a collection of 64-bit plug-ins to allow you to get the best out of the 64-bit system. Isn't life complicated? 

PC Snippets

  • Smaller, faster, better? For many musicians, Intel's Q6600 2.4GHz Core 2 Quad, with its 2 x 4MB L2 cache, has been the processor of choice for a long time now (I recommended it, for instance, in PC Notes January 2006), but it now has a serious rival. Intel's Q9300 2.5GHz Core 2 Quad with 2 x 3MB L2 cache features their newer and smaller 45nm technology, which should allow faster clock speeds while generating less heat than the 65nm process used by the Q6600. The Q9300 is already selling widely at similar prices to the Q6600, but manages to out-perform it slightly in most benchmarks, while staying cooler. For those musicians whose motherboard supports this new model (and many don't yet), the Q9300 could become the new favourite. www.intel.com
  • Intel BIOS update helps musicians: Continuing the recent trend of BIOS updates curing musicians' problems, Intel have released an update for their popular DP35DP motherboard (a popular choice in DAWs) that seems to solve various issues for those who also have an nVidia graphics card, 4GB of RAM and more than one UAD1 DSP card. While this hardware combination apparently works well with up to 2GB of RAM, with 4GB various applications took a long time to launch and screen refreshes became slower. The latest 0437 version (http://downloadcenter.intel.com) apparently completely cures these problems. Thanks to SOS Forum user scramble for passing on this information.
  • Audio Analyser improved: RightMark's Audio Analyser (http://audio.rightmark.org) is now up to version 6.1.0, adding testing of any MME device in Vista and of any Kernel Streaming output in Windows XP (in the Pro version only), and including various bug fixes and tweaks. The basic version is still free, while the Pro version, with additional ASIO and Kernel Streaming options and GUI skin support, costs £68.90