4

Installed Ubuntu on a nice little asus CN60 chromebox via this method (real hardware, not virtualized) and it's been running great for a while. I wanted to install some additional RAM recently and that's when I noticed some weirdness with the RAM sizes listed.

dmidecode shows this listing, correctly identifying the size of the two RAM sticks installed:

# dmidecode 3.0
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.

Handle 0x0006, DMI type 17, 40 bytes
Memory Device
    Array Handle: 0x0005
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 4096 MB
    Form Factor: SODIMM
    Set: None
    Locator: Channel-0-DIMM-0
    Bank Locator: BANK 0
    Type: DDR3
    Type Detail: Synchronous
    Speed: 1600 MHz
    Manufacturer: Unknown (0)
    Serial Number: None
    Asset Tag: Not Specified
    Part Number: Not Specified
    Rank: 1
    Configured Clock Speed: 1600 MHz
    Minimum Voltage: Unknown
    Maximum Voltage: Unknown
    Configured Voltage: Unknown

Handle 0x0007, DMI type 17, 40 bytes
Memory Device
    Array Handle: 0x0005
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 8192 MB
    Form Factor: SODIMM
    Set: None
    Locator: Channel-1-DIMM-0
    Bank Locator: BANK 2
    Type: DDR3
    Type Detail: Synchronous
    Speed: 1600 MHz
    Manufacturer: Unknown (0)
    Serial Number: None
    Asset Tag: Not Specified
    Part Number: Not Specified
    Rank: 2
    Configured Clock Speed: 1600 MHz
    Minimum Voltage: Unknown
    Maximum Voltage: Unknown
    Configured Voltage: Unknown

Whereas free -m and htop both show a lot less:

              total        used        free      shared  buff/cache   available
Mem:           1990         252        1434           3         303        1574
Swap:          3971           0        3971

What's going on here? Am I missing some setting for redirecting RAM?

Update Additionally, setting mem=12G in grub while booting doesn't change this behavior.

uname -a outputs the following:

Linux chromebox 4.4.0-96-generic #119-Ubuntu SMP Tue Sep 12 14:59:54 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
10
  • Did you follow the manfacturer's recommendations on installing the ram sticks? Like maybe in adjacent banks, or largest stick in lowest bank, etc.
    – ubfan1
    Nov 18, 2017 at 0:28
  • I don't know if there are recommendations for how to install them but I have tried both sticks in both slots, and using just a single stick in the primary slot with the same results.
    – Nick
    Nov 18, 2017 at 0:35
  • Are you running a 64 bit Ubuntu? Please post uname -a
    – ubfan1
    Nov 18, 2017 at 0:47
  • @ubfan1 I am, as noted in the title. I added uname -a to the question.
    – Nick
    Nov 18, 2017 at 3:58
  • 1
    I do not have Chromebox, but what its BIOS says about installed RAM?
    – N0rbert
    Nov 19, 2017 at 19:52

1 Answer 1

4
+50

According to the specifications of your system, it is limited to 4GB RAM.

dmidecode shows the correct size of the memory modules, because the size is read from the EEPROM on the memory modules, and is correctly reported by the BIOS. Then the BIOS limit the usable size to what this machine is able to handle.

This is most likely a hardware limitation of the motherboard. Supporting bigger RAM requires more address lines to be connected on the motherboard (from the CPU to the RAM slots). More lines on a PCB means making either the PCB bigger or with tighter tolerances, resulting in an extra cost.

Even in desktop computers, this is not really uncommon. My Dell OptiPlex 7040 is limited to 16GB even it's processor (core i7-6700) can manage up to 64GB RAM. Now this 64-bit CPU is limited to 64GB RAM for exactly the same reason your motherboard is limited to 4GB! More lines in the silicon, means extra cost...

In your case, you see 2GB of RAM instead of the 4GB specified maximum, because of a difference in the number of row and columns addresses supported or because of a BIOS bug. I've already seen computers simply refusing to boot, even in the BIOS, just beeping or blinking because an unsupported memory module was plugged-in.

About the 16 GB RAM (and relationship to Core i3)

Searching the internet, I could not find any reference for the 16 GB RAM support, but I found many references worded like that:

ASUS Chromebox CN60 M075U - Core i3 4010U 1.7 GHz - 4 GB - 16 GB

Unfortunately, 16 GB in this description is not the maximum RAM size, it's the SSD size, and I think this wording caused confusion.

2
  • Interesting theory! There's a celeron and i3 model for the same model number (CN60) so I'm betting the i3 version is the one that I've seen that says 16GB supported. Not sure I catch the note on the 2GB vs 4GB though. Do you have a suggestion for diagnosing or fixing this case?
    – Nick
    Nov 20, 2017 at 22:56
  • @Nick You would have to change the motherboard. Essentially, the only way to fix it is to buy a new machine. I have an old P4 that's limited to 1.5 GB RAM. Still running smooth, but boy would I like more!
    – user595510
    Nov 22, 2017 at 12:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .