Ok, this may or may not be relevant, but I share hoping to help.
This past summer I updated my Nehalem system from 12GB of flaky, high volt, issue-ridden OCZ ram to 24GB of standard voltage, relatively issue-free Crucial Ballistix. I had all sorts of problems with only 8GB or 16GB showing up, when I dropped in all six sticks, whacked the speed to 1600, and left everything else at auto. Over the course of a few days, I was able to reconstruct why.
When run with XMP disabled, the sticks advertised themselves to the system as 1.5V 1333MHz sticks.
When XMP was enabled, all sorts of settings changed (including BCLK), and they ran as 1.5V 1600MHz sticks, stably.
When I manually set 1600MHz, I was getting 1600 with 1333 timings (7-7-7-13, I think), instead of the proper 1600 timings Crucial intended (10-10-10-24).
Once I manually set the timings to match the XMP stuffs, I could run 1600MHz and 1.5V with no trouble.
Edit: The kit ran almost fine at 1333 timings and 1600 speed when I only had three sticks in. If I put in all six, crapout. Maybe check the reference material on your ram for the timings/speed/volts you should be at, and manually set those.
Razorback - Arch-6430U - i7-3687U - 16GB - Intel HD4000
Rocinante - Ubuntu-E5530 - i5-3230M - 16GB - Intel HD4000
Donnager - Arch-M4800 - i7-4800MQ - 32GB - Intel HD4600/Quadro K2100M
Vargr - Arch-Vargr - i7-4790K - 32GB - Intel HD4600/GeForce GTX 970