Hooch Tan
06-09-2008, 05:03 AM
A little over a month ago, a little birdie told me that I was the new proud owner of 4GB of Kingston HyperX DDR2 RAM, thanks to Digital Home Thoughts' Re-Launch contest. Needless to say I was elated. More RAM is always a good thing. So about a week later, Mr. FedEx delivered a package lovingly wrapped with compliments of Digital Home Thoughts and Kingston. During that time, I was asked if I could write about it briefly in the forums. Several weeks later with a new computer, it turns out a short blurb is not enough.
Now for me, a new toy is a joyous occasion. It's a time for celebration, and the purchase of additional toys! About 5 microseconds after being told about the RAM, it was tagged for use in a new interocitor. My existing server was an aging P4 2.8Ghz machine plodding about with 2.5GB of RAM. Over the past three years of its existence, as I've added more and more responsibilities on it, it has responded in protest by accomplishing its duties with agonizing slowness. My server is responsible for a lot of tasks, from file serving to media playback to hosting several virtual machines, one of which is the terminal that I do most of my work in. The reason I consolidated most of my computerly duties was to reduce power consumption as numerous PCs spread willy nilly would consume more power. A single server both saves power and makes management of everything as easy as changing diapers on a baby.
RAM does not a server make, so it was time to pick a CPU. After much deliberation, I settled on the Intel Q6600 CPU. As the most demanding tasks of my server would be virtual machines, CPU speed was not of critical concern, though the Q6600 is no slouch. Virtual machines depend much more on memory and hard disk performance. Yay for me! My RAM runs at 1066Mhz! Yay for me! I've got several hard drives to distribute the load of multiple VMs. As for a choice of a motherboard, paired with the Q6600, the ASUS P5K seemed like an ideal choice with its reputation of stability and performance. Based on the old, but reliable P35 chipset, it provided me with 4 SATA channels and 1 IDE channel for legacy hard drives. While many of my drives are external, internal drives also have their use. I settled for an NVidia 7200 based video card as fast 3d performance, or even any video playback would not be of concern. This baby was a server, not a workstation.
So with a cornucopia of computer bits strewn across my living room floor, I spend the next hour putting things together, and the next hour installing Windows XP on the new server named Mycroft. This is where I hit a major road block. After starting up Mycroft, I was chagrined to find out that he was only reporting 3.25GB of RAM. BIOS was reporting 4GB of RAM running happily at 1066Mhz (as per the Kingston specs) but Windows XP refused to see there were four lights. How can this be? This wasn't a hard drive where 1GB doesn't equal 1GB. I dived into the research tool that is Google and several hours later, I came up for air. It turns out the problem was Windows XP. True, some motherboards have some issues with high levels of RAM, but the P5K suffers no such problem. The /3GB and /PAE switches of days gone past also serve no purpose as since Service Pack 2, Windows XP ignores them. I was cursed in using 32 bit Windows.
Reading various blogs, articles and forums, I learned that the problem is that with Windows running as a 32 bit operating system, it can only address 4GB of memory. Great! I've got 4GB of memory! So why doesn't it report it? Well, seems Windows needs to resreve 512MB of that 4GB for kernel duties. That means that the most you could ever see of available RAM is 3.5GB. To those that ask why then, that someone with 2GB of RAM don't only see 1.5GB of RAM, it's becuase there's a distinction between physical RAM and what Windows can address. The 512MB of memory that Windows reserves is not "real" memory, but memory space. That means that the 4GB limit is not just a physical limitation, but what Windows is capable of addressing. So you see 2GB on your system with 2GB installed, and above that, there's the 512MB of memory space that Windows reserves.
I did say 3.25GB of RAM. Seems that the 256MB video card was the culprit for the remaining .25GB of missing memory. Mycroft needed to reserve that amount to address the video memory. So no matter what I did, what switch I used, what curses about ancestry, hygeine, or improbable physical positions I used, I would not see all 4GB of RAM. But I'm stubborn. Further research showed that rumours of a way around this limit existed. The rumours proved true with Windows XP Professional x64 Edition. A quick trip to the friendly neighbourhood local store proved fruitful and another hour of watching progress bars progress I was rewarded with Windows XP now reporting a full 4GB of RAM. To those of you who want to install more than 3GB of RAM, remember that you'll need to use a 64 bit operating system or that extra RAM you bought will lie doggo. On top of that make sure that whatever parts you buy for your 64 bit baby have 64 bit drivers. Otherwise, those nughty bits will have to go back to the store.
So here I sit, several weeks after that little birdie sang me a song, with Mycroft, a snappy, healthy server ready for years of productive service ahead. Many thanks for Digital Home Thoughts and Kingston for the <del>memories</del> memory!
Notes:
1) Many of you will note that I said I was using Windows XP Professional. This choice was intentional. Windows Server does have 64bit editions, however, the cost is prohibitive, and being a working man, I have these things that sit on my shoulder called budget and debt. They counsel me on my choice of toys. Yes, Linux was also a considered in all its flavours, however, as file server, a lot of my files reside on external drives formatted NTFS. Why NTFS? Because at times, I need to plug those drives into other computers, and NTFS is more commonly supported than Linux filesystems.
2) Why delegate most of my tasks to virtual machines? While the server OS choice was Windows, a lot of my stuff is managed through services I can only find, or run better on Linux. So one virtual machine is a Linux server. Another is the Windows XP terminal I have. It allows me to work with it, or make changes without having to reboot the entire server. Another manages my media playback which broadcasts via FM transmitter to my bedroom so I can listen to audiobooks. Another handles a shoutcast station which I listen to while I'm at work.
3) Why quad and not dual core? A dual CPU would serve the task fine, leading my choice to Intel as AMD dual core setups run with 800Mhz memory. A quad core would give me more breathing room, leaving it to the Phenom and Core 2 Quad CPUs. The recent price cut to the Q6600 however, made it my CPU of choice. While I was on a budget, quad core would allow me to load additional tasks onto the server, such as starting up the Orb service again, so I could watch TV and my videos while out on the road.
Now for me, a new toy is a joyous occasion. It's a time for celebration, and the purchase of additional toys! About 5 microseconds after being told about the RAM, it was tagged for use in a new interocitor. My existing server was an aging P4 2.8Ghz machine plodding about with 2.5GB of RAM. Over the past three years of its existence, as I've added more and more responsibilities on it, it has responded in protest by accomplishing its duties with agonizing slowness. My server is responsible for a lot of tasks, from file serving to media playback to hosting several virtual machines, one of which is the terminal that I do most of my work in. The reason I consolidated most of my computerly duties was to reduce power consumption as numerous PCs spread willy nilly would consume more power. A single server both saves power and makes management of everything as easy as changing diapers on a baby.
RAM does not a server make, so it was time to pick a CPU. After much deliberation, I settled on the Intel Q6600 CPU. As the most demanding tasks of my server would be virtual machines, CPU speed was not of critical concern, though the Q6600 is no slouch. Virtual machines depend much more on memory and hard disk performance. Yay for me! My RAM runs at 1066Mhz! Yay for me! I've got several hard drives to distribute the load of multiple VMs. As for a choice of a motherboard, paired with the Q6600, the ASUS P5K seemed like an ideal choice with its reputation of stability and performance. Based on the old, but reliable P35 chipset, it provided me with 4 SATA channels and 1 IDE channel for legacy hard drives. While many of my drives are external, internal drives also have their use. I settled for an NVidia 7200 based video card as fast 3d performance, or even any video playback would not be of concern. This baby was a server, not a workstation.
So with a cornucopia of computer bits strewn across my living room floor, I spend the next hour putting things together, and the next hour installing Windows XP on the new server named Mycroft. This is where I hit a major road block. After starting up Mycroft, I was chagrined to find out that he was only reporting 3.25GB of RAM. BIOS was reporting 4GB of RAM running happily at 1066Mhz (as per the Kingston specs) but Windows XP refused to see there were four lights. How can this be? This wasn't a hard drive where 1GB doesn't equal 1GB. I dived into the research tool that is Google and several hours later, I came up for air. It turns out the problem was Windows XP. True, some motherboards have some issues with high levels of RAM, but the P5K suffers no such problem. The /3GB and /PAE switches of days gone past also serve no purpose as since Service Pack 2, Windows XP ignores them. I was cursed in using 32 bit Windows.
Reading various blogs, articles and forums, I learned that the problem is that with Windows running as a 32 bit operating system, it can only address 4GB of memory. Great! I've got 4GB of memory! So why doesn't it report it? Well, seems Windows needs to resreve 512MB of that 4GB for kernel duties. That means that the most you could ever see of available RAM is 3.5GB. To those that ask why then, that someone with 2GB of RAM don't only see 1.5GB of RAM, it's becuase there's a distinction between physical RAM and what Windows can address. The 512MB of memory that Windows reserves is not "real" memory, but memory space. That means that the 4GB limit is not just a physical limitation, but what Windows is capable of addressing. So you see 2GB on your system with 2GB installed, and above that, there's the 512MB of memory space that Windows reserves.
I did say 3.25GB of RAM. Seems that the 256MB video card was the culprit for the remaining .25GB of missing memory. Mycroft needed to reserve that amount to address the video memory. So no matter what I did, what switch I used, what curses about ancestry, hygeine, or improbable physical positions I used, I would not see all 4GB of RAM. But I'm stubborn. Further research showed that rumours of a way around this limit existed. The rumours proved true with Windows XP Professional x64 Edition. A quick trip to the friendly neighbourhood local store proved fruitful and another hour of watching progress bars progress I was rewarded with Windows XP now reporting a full 4GB of RAM. To those of you who want to install more than 3GB of RAM, remember that you'll need to use a 64 bit operating system or that extra RAM you bought will lie doggo. On top of that make sure that whatever parts you buy for your 64 bit baby have 64 bit drivers. Otherwise, those nughty bits will have to go back to the store.
So here I sit, several weeks after that little birdie sang me a song, with Mycroft, a snappy, healthy server ready for years of productive service ahead. Many thanks for Digital Home Thoughts and Kingston for the <del>memories</del> memory!
Notes:
1) Many of you will note that I said I was using Windows XP Professional. This choice was intentional. Windows Server does have 64bit editions, however, the cost is prohibitive, and being a working man, I have these things that sit on my shoulder called budget and debt. They counsel me on my choice of toys. Yes, Linux was also a considered in all its flavours, however, as file server, a lot of my files reside on external drives formatted NTFS. Why NTFS? Because at times, I need to plug those drives into other computers, and NTFS is more commonly supported than Linux filesystems.
2) Why delegate most of my tasks to virtual machines? While the server OS choice was Windows, a lot of my stuff is managed through services I can only find, or run better on Linux. So one virtual machine is a Linux server. Another is the Windows XP terminal I have. It allows me to work with it, or make changes without having to reboot the entire server. Another manages my media playback which broadcasts via FM transmitter to my bedroom so I can listen to audiobooks. Another handles a shoutcast station which I listen to while I'm at work.
3) Why quad and not dual core? A dual CPU would serve the task fine, leading my choice to Intel as AMD dual core setups run with 800Mhz memory. A quad core would give me more breathing room, leaving it to the Phenom and Core 2 Quad CPUs. The recent price cut to the Q6600 however, made it my CPU of choice. While I was on a budget, quad core would allow me to load additional tasks onto the server, such as starting up the Orb service again, so I could watch TV and my videos while out on the road.