Apr 252013

X58 LogoThere is something that got on my nerves just a tiny little bit. And that’s the memory limit of socket 1366 processors. Not Xeons on server chipset platforms, mind you, but regular Core i7 on X58. According to Intel specification, the IMC (internal memory controller) of the CPU will only support 24GB of memory, and the same is stated in X58 chipset specifications. On the best of desktop mainboards there are 6 DIMM sockets for the triple-channel setup, and 8GB modules are actually possible. Just not the full amount of 6×8=48GB, so you should only be able to plug in either 6×4GB or 3×8GB for a 24GB maximum. Or so Intel specs tell us at least.

Still, I found a very few people on the web who claimed that they tried 48GB and that they had it working just fine. Some others said they tried and got no POST at all (black screen on boot), some tried on my own mainboard (Edit: An ASUS P6t Deluxe) and succeeded while others claimed it’s impossible. And there were also people who said that it did work, but they only got 32GB shown in BIOS and within their operating system, Windows 7 in that case. That was some Gigabyte mainboard if I remember correctly, but don’t quote me on this.

The thing is, these Core i7 desktop processors actually have a 36-bit address bus. With a single byte being the smallest addressable unit, that means we can address 236 bytes, which happens to be a total of 64GB. For comparisons sake, current Xeon processors have a 40-bit address bus, which enables those chips to address 1TB of memory, or 2TB in a 2-processor setup based on a NUMA architecture. So basically, there should be no actual 24GB hard limit.

Since I hate changing platforms (mainboard, resetup etc, it’s just a pain), an 48GB upgrade would mean that I don’t need X79 so badly anymore, so I decided to give it a shot. X79 would be the direct successor with 8×8GB=64GB maximum on a quad channel setup for socket 2011 CPUs. However, interesting CPUs will only come in the form of Ivy Bride E, which may even be a disappointment should Intel choose not to release an octocore, but only another hexcore. So, would it be possible to prolong the life of X58 just once again for memory intensive applications? Well, look for yourself:

In case you’re asking yourself why I picked Crucial DRAM, well, as hardware.fr shows, it’s [RMA rate is pretty low] and it was quite a lot cheaper than the Kingston HyperX alternative that I would actually have preferred. Memory is cheap alright, but at that amount it’s still a lot of cash, and I managed to save a 100€ here when picking Crucial. Besides, I never had Crucial RAM anyway, so I’m giving them a chance. ;)

Now, all that needs to be proven is that this setup is not just possible, but also stable! I’ll keep using this and report instabilities in case I do encounter any. As you can see above, I picked CL10 (10-10-10) latencies for the memory. The two combined 12GB triple kits from Mushkin that I had used before were also CL9 by specification, but when combined to 24GB they would only be stable at CL10. So I left it there, as I have just combined three 16GB dual kits to a whopping 48GB here. I’ll better play it safe with the latencies.

But well, there you go. 48GB on X58 with a regular Core i7 processor! It CAN be done after all!

Edit: After filling the memory for several times, using tsMuxer as well as MKVmerge and my own backup scripts including robocopy for backups, confirming data integrity after flushing using diff, it actually seems as if this was really stable. I continue to stand surprised. Easier than I would’ve thought.

Edit 2: Now, over three weeks later, the setup is still going strong. I have transcoded and multiplexed (to MKV) a lot of Blu-Rays, played lots of games, filled the memory with NTFS write & read caches many times. Current system uptime stands strong at 18 days without any single problem for the time being, having my CPU load at 100% for days now with memory filled up all the way. I’d say this actually works!

Edit 3: As a final confirmation, the machine has now run for almost 5 months straight, 24/7. Dozens of Blu-Rays have been transcoded, many games played, many files copied and modified, lots of images processed. Not a single hiccup!

Edit 4: Finally, it failed, a few months before today, which would be 2016-08-12. That’s not the platforms’ fault however, it was just one of the memory modules failing (I have confirmed that by testing them on several other mainboards). Hm, back to Kingston after all? ;)