0

Memory Trouble in Stormville

 3 years ago
source link: http://www.os2museum.com/wp/memory-trouble-in-stormville/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Memory Trouble in Stormville

The OS/2 Museum recently acquired a genuine Intel DX79SR (Stormville) board. Together with its close siblings DX79SI (Siler) and DX79TO (Thorsby), these were the last “great” Intel motherboards, supporting the big LGA 2011 socket for the Sandy Bridge E platform—but not Ivy Bridge, because Intel treated buyers of its final boards rather poorly and refused to update the board firmware to support Ivy Bridge E CPUs.

The DX79SR is extremely similar to the older DX79SI which it replaced in Intel’s lineup. The only noteworthy differences are that the Stormville adds two additional rear USB 3.0 ports and two internal 6Gbps SATA ports (through an onboard Marvell SATA controller).

A detail shot (voltage regulator heatsink) of an Intel DX79SR destkop board, 2012.
Intel DX79SR board detail

At $299 (price at May 2012 introduction), the DX79SR was a rather pricey board for rather pricey CPUs. Why would anyone want one? Because it was the only way to get a desktop board (from Intel) supporting an Intel CPU with more than four cores and with support for more than 32GB RAM. All “standard” desktop boards for Sandy Bridge and Ivy Bridge platforms (and even for Haswell in fact) were limited to four cores and 32GB RAM.

It is also noteworthy that the board supports not only Sandy Bridge E but also Sandy Bridge EP processors, and can thus run with not just the six-core i7-branded CPUs but also 6-core or even 8-core LGA2011 Xeons, such as the beefy eight-core E5-2687W.

In my testing, the DX79SR coupled with an i7-3930K is an impressive performer, albeit a real power guzzler. The six-core CPU is rated at 3.2 GHz base frequency and 3.8 GHz turbo, but it easily overclocks to 4.6 GHz turbo with air cooling. In multi-threaded workloads, the old Sandy Bridge E can still easily keep up with today’s quad-core CPUs.

That’s all well and good. Unfortunately, getting more than 32 GB (or at first even 32GB) going in the Stormville board turned out to be quite difficult.

When I first set up the board, I used just two memory modules. That worked without any trouble. Three modules worked fine as well, and improved memory performance–the i7-3930K has a quad-channel memory controller and benefits from having three rather than two memory channels filled. And it benefits even more from populating all four channels. Or maybe it would.

With four modules, things just wouldn’t get off the ground. The board would power off and restart again, and the only hint was POST code b0 hex (probably that) shown on the board’s LED display.

So I started experimenting. The board has two sets of DIMM slots, blue and black. The manual only says that blue slots need to be populated first, starting from slot 1. Experimentation showed that the manual does not tell the whole truth; the actual requirement is that a black slot cannot be populated unless the corresponding blue slot is also populated.

It is, for example, possible to populate slots 1 and 5 (blue and black), although for performance reasons it’s much better to populate slots 1 and 2.

What the manual also does not explain is that blue slots need not be strictly populated starting from the first one. It is perfectly possible to only populate slot 1, or only slot 2, or only slot 3.

DIMM slot 4 turned out to be the troublemaker. No matter what I did, as soon as anything was in slot 4, the board failed to POST. I tried a number of different modules and their combinations, and quickly established that a module that works perfectly fine in slot 1, 2, or 3 still fails in slot 4.

A detail of Intel DX79SR board box.
In a word… nope

I concluded that the fourth slot must be bad, even though visual inspection of the board did not reveal any hint of damage and the board appears to have been well cared for.

But of course I had to do a bit of research first and determine if this was a known problem. And sure enough, it was, or at least I was not the first to run into it. Back in 2013, someone concluded that DIMM slots 4 and 8 (the fourth memory channel) on his board were defective. Got a replacement the board… same problem. Got another replacement board… still the same problem.

It appears that for some mysterious reason, the DX79SR board is extremely picky about the memory in the fourth memory channel. It is clearly not a problem with the memory being defective, the same modules work perfectly in other slots on the same board!

I tried a lot of different memory modules. Corsair, Kingston, Crucial, Samsung, G.Skill… and they all refused to work in slot 4. Soon enough I realized that it’s actually not that hard to put 48GB RAM in the board: The key is populating slots 1-3 and 5-7, while leaving slots 4 and 8 alone. That at least is a clear improvement over regular Sandy Bridge (and Ivy Bridge, and Haswell) boards.

A selection of memory modules that work perfectly in memory channels A-C of a DX79SR board but fail in channel D.
No go in channel 4

At the same time, there are reports of people who did successfully run these boards fully populated with 64GB RAM. What were they doing differently? Hard to say.

For good measure, I tried a different CPU in case that might make any difference, but it didn’t (the reports are of i7-3930K both working and not working with fully populated memory in a DX79SR board).

I even tried downgrading the BIOS (and nearly bricked the board when upgrading the board again) but that made no real difference. The board was failing slightly differently with older BIOS (it took noticeably longer for the board to shut off when the 4th memory channel was populated) but nothing really changed.

For the sake of completeness, I should note that although it ostensibly the fourth memory channel that’s causing trouble (Intel names them A/B/C/D, and D refuses to work), it is actually the second integrated memory controller (IMC). The IMCs are numbered 0-3 and from performance statistics it’s clear that IMC1 is unpopulated. Moreover, when reading DIMM SPD data it’s slots 2/3 that aren’t populated, which again corresponds to IMC1. I have no explanation for this numbering discrepancy; I do not think it has any real bearing on the trouble with the fourth memory channel.

USB Fun

The board also had a rather interesting problem with one of its USB controllers. The USB 3.0 controller driving the rear ports (a Renesas μPD720201) only worked sometimes—that is to say, quite often the PCI device simply was not there at all. But sometimes it was!

The problem appears to have gone away after the PSU was replaced (an older 450W PSU was replaced by a brand new 750W PSU). The vanishing USB controller was the only problem that could likely be traced to the PSU, and the 450W PSU happily works with many other boards.

The USB controllers on the DX79SR board have plenty of their own known issues, which Intel attempted to solve through USB firmware updates (firmware for the two USB 3.0 controllers, entirely separate from the BIOS). A vanishing USB controller does not appear to be a known problem though.

Back to the Memory

I would be thankful for any tips on how to get the 4th memory channel going in the DX79SR board. There is a chance the slot/channel is simply bad, but I consider that quite unlikely, in part because the previous owner of the board confirmed that the actual board did run with fully populated memory.

My suspicion is that the BIOS is somehow responsible. The matrix of BIOS settings on this board is quite unusually complex and the behavior of the BIOS does not inspire any confidence; changing one setting is prone to changing several other settings, and at the same time certain settings persist much longer than one would expect (e.g. overclocking settings for i7-3930K remained after an i7-3820 was installed, yet with an i7-3820 it was not actually possible to arrive at those settings). The short of it is that the BIOS settings are so complex that I could easily be missing something or doing something “wrong” without realizing it. I just don’t know what, and I’m extremely (if perhaps unreasonably) bothered by not being able to use the board to its full potential.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK