I've performed a memory upgrade on a Dell Precision T7400. The official user guide states:
Specifications
Memory type: 667- or 800-MHz fully-buffered DDR2 SDRAM fully-buffered DIMMs (FBDs)
Minimum memory: 1 GB
Maximum memory: 64 GB with optional memory riser cards, 32 GB standard
I am not using memory risers. I have 8 x 4GB Samsung 800 MHz FB-DIMM DDR2 (product code M395T5160CZ4-CF76). The memory is working, but at the wrong clock:
$ sudo lshw -C memory | grep FB-DIMM
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
description: FB-DIMM DDR2 FB-DIMM Synchronous 667 MHz (1.5 ns)
dmidecode agrees:
$ sudo dmidecode -t memory
# dmidecode 3.0
Getting SMBIOS data from sysfs.
SMBIOS 2.5 present.
Handle 0x1000, DMI type 16, 15 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC
Maximum Capacity: 64 GB
Error Information Handle: Not Provided
Number Of Devices: 8
Handle 0x1100, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 1
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 53496E32
Asset Tag: 010829
Part Number: M395T5160CZ4-CF76
Handle 0x1101, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 2
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 052048F7
Asset Tag: 010812
Part Number: M395T5160CZ4-CF76
Handle 0x1102, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 3
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 052048EF
Asset Tag: 010812
Part Number: M395T5160CZ4-CF76
Handle 0x1103, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 4
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 051FD1B0
Asset Tag: 010811
Part Number: M395T5160CZ4-CF76
Handle 0x1104, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 5
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 050BD2E7
Asset Tag: 010828
Part Number: M395T5160CZ4-CF76
Handle 0x1105, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 6
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 060BB367
Asset Tag: 010828
Part Number: M395T5160CZ4-CF76
Handle 0x1106, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 7
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 060BB350
Asset Tag: 010828
Part Number: M395T5160CZ4-CF76
Handle 0x1107, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: No Error
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: FB-DIMM
Set: None
Locator: DIMM 8
Bank Locator: Not Specified
Type: DDR2 FB-DIMM
Type Detail: Synchronous
Speed: 667 MHz
Manufacturer: 80CE7FB380CE
Serial Number: 0529DA3A
Asset Tag: 010825
Part Number: M395T5160CZ4-CF76
One suspicious message appears in the dmesg MTRR:
[ 0.000000] DMI: Dell Inc. Precision WorkStation T7400 /0RW199, BIOS A11 04/30/2012
[ 0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[ 0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
[ 0.000000] e820: last_pfn = 0x830000 max_arch_pfn = 0x400000000
[ 0.000000] MTRR default type: uncachable
[ 0.000000] MTRR fixed ranges enabled:
[ 0.000000] 00000-9FFFF write-back
[ 0.000000] A0000-BFFFF uncachable
[ 0.000000] C0000-DBFFF write-protect
[ 0.000000] DC000-EFFFF uncachable
[ 0.000000] F0000-FFFFF write-protect
[ 0.000000] MTRR variable ranges enabled:
[ 0.000000] 0 base 0000000000 mask 2000000000 write-back
[ 0.000000] 1 base 00CFF00000 mask 3FFFF00000 uncachable
[ 0.000000] 2 base 00D0000000 mask 3FF0000000 uncachable
[ 0.000000] 3 base 00E0000000 mask 3FE0000000 uncachable
[ 0.000000] 4 base 1FF0000000 mask 3FF0000000 uncachable
[ 0.000000] 5 disabled
[ 0.000000] 6 disabled
[ 0.000000] x86/PAT: Configuration [0-7]: WB WC UC- UC WB WC UC- WT
[ 0.000000] total RAM covered: 130047M
... a bunch of gran_size / lose cover RAM ...
[ 0.000000] mtrr_cleanup: can not find optimal value
[ 0.000000] please specify mtrr_gran_size/mtrr_chunk_size
...
[ 0.000000] Memory: 32900928K/33552024K available (8852K kernel code, 1441K rwdata, 3828K rodata, 1556K init, 1296K bss, 651096K reserved, 0K cma-reserved)
Why might my memory be under-clocked, and can I fix this? I do not see any relevant modifiable settings in the BIOS.
The Dell spec sheet for T7400 says that:
The MTRR part applies to memory layout in Linux, and you should look at fixing that but it has no bearing on memory clock speed.