Wiki‎ > ‎

Memory Error with ASUS SABERTOOTH 990FX

posted Jul 9, 2015, 2:17 PM by Dong Xu   [ updated Jul 11, 2015, 9:33 PM ]
G.SKILL Ripjaws X Series 32GB (4 x 8GB) 240-Pin DDR3 SDRAM DDR3 1600 (PC3 12800) Desktop Memory Model F3-1600C9Q-32GXM

32GB becomes 2GB

WARNING: BIOS bug: CPU MTRRs don't cover all of memory, losing 30191MB of RAM.
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: at /usr/src/packages/BUILD/kernel-default- mtrr_trim_uncached_memory+0x2f0/0x34d()

the fix to this mtrr issue was adding 


to Yast2 -> bootloader


/garlic/apps/stress/bin/stress --vm-bytes 33000000k  --vm-keep -m 1


/garlic/apps/stress/bin/stress --vm-bytes $(awk '/MemFree/{printf "%d\n", $2 * 0.9;}' < /proc/meminfo)k --vm-keep -m 1


Other way:

I found this solution on nixCraft, I think it makes sense and quicker.
First find out memory site using free command.

# free
             total       used       free     shared    buffers     cached
Mem:      32867436   32574160     293276          0      16652   31194340
-/+ buffers/cache:    1363168   31504268
Swap:            0          0          0

It shows that this server has 32GB memory,
dd if=/dev/urandom bs=32867436 count=1050 of=/home/memtest

free reports by k and use 1050 is to make sure file memtest is bigger than physical memory.  To get better performance, use proper bs size, for example 2048 or 4096, depends on your local disk i/o,  the rule is to make bs * count > 32 GB.
md5sum /home/memtest; md5sum /home/memtest; md5sum /home/memtest
If you see md5sum mismatch in different run, you have faulty memory guaranteed.
The theory is simple, the file /home/memtest will cache data in memory by filling up all available memory during read operation. Using md5sum command you are reading same data from memory.