Using only 3.3GB but I have 8GB RAM even on Ubuntu 14.04 64bit

15,347

Solution 1

Looks like the issue is related to the updates and broken mirrors. Changed the mirror I'm using to a different one, updates were successful. After a reboot, performance became smooth and when I checked the RAM it already has 7.2GB(looks like AMD APU uses RAM too).

Solution 2

Check /proc/ tree memory file

$> cat /proc/meminfo
MemTotal: $MEMTOTAL
MemFree: $MEMFREE
Buffers: $BUFFERS
Cached: $CACHED
SwapCached: $SWAPCACHED
... ...

Check DMESG Log for your Memory

$> dmesg | grep "Memory"

Invoke dmidecode to learn about your hardware

$> dmidecode --type memory

Most likely, you are facing a hardware issue. Make sure your Motherboard's BIOS is completely up-to-date, and acquire a Return Materials Authorization for the memory from the supplier if the problem persists. Also try inserting the DIMMS into different ports.

I remember something very important about PAE (Physical Address Extension) Enabled Kernels!!!

Run this:

grep --color=always -i PAE /proc/cpuinfo

If you see a $RETURN_VALUE here, you have PAE support.

The following command sequence will install a generic-PAE kernel on Ubuntu.

  • Line 1 installs the package.
  • Line 2 prints Kernel to screen.
  • Line 3, 4, and 5 enables PAE flag in /proc/
  • Line 6 checks to see if this has been successful.
apt-get install linux-image-generic-pae

uname -a

cat /proc/cpuinfo | sed 's\flags\t*:&pae' > /tmp/cpuinfo/pae

mount -o bind /tmp/cpuinfo_pae /proc/cpuinfo

mount -o remount,ro,bind /proc/cpuinfo

grep flags /proc/cpuinfo

3.21GB memory access limitation is commonly a Kernel-driven issue. Your other option is to compile a main-line vanilla Kernel from Kernel.org and enable the CFLAGS for PAE extension.

32-Bit Kernel with PAE may work better than X64 Kernel. I have often had only a boatload of problems with X64 and hardware.

Share:
15,347

Related videos on Youtube

Kirti Jha
Author by

Kirti Jha

Updated on September 18, 2022

Comments

  • Kirti Jha
    Kirti Jha over 1 year

    I have 2x 4GB(8GB) RAM installed on my motherboard and BIOS/UEFI can confirm it, but on Ubuntu 14.04 64bit only has 3424776kB or 3.266120911GB.

    uname -a returns:

    3.13.0-36-generic #63-Ubuntu SMP Wed Sep 3 21:30:07 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    

    Through search, someone said about memory remapping but I can't find that on my Gigabyte F2A55M-DS2, I think that means it is on by default.

    $ free -g
                    total       used       free     shared    buffers     cached
    Mem:             3          1          1          0          0          0
    -/+ buffers/cache:          1          1
    Swap:            3          0          3`
    
    
    $file /sbin/init
    /sbin/init: ELF 64-bit LSB  shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=7d9cc5d4d6cb68aede9400492a7c5942c55c7598, stripped`
    
    • terdon
      terdon over 9 years
      How are you checking how much memory is seen? What is the output of free -g? Also, as far as I know, the uname output you show only means your hardware is 64bit capable, not that you're actually running a 64bit kernel. In fact, it looks like you're not. What's the output of file /sbin/init?
    • Martin von Wittich
      Martin von Wittich over 9 years
      Ensure that "Memory Remapping" is enabled in the BIOS ( en.wikipedia.org/wiki/3_GB_barrier#Address_remapping ).
    • Kirti Jha
      Kirti Jha over 9 years
      @terdon free -g total used free shared buffers cached Mem: 3 1 1 0 0 0 -/+ buffers/cache: 1 1 Swap: 3 0 3 file /sbin/init /sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=7d9cc5d4d6cb68aede9400492a7c5942c55c7598, stripped
    • terdon
      terdon over 9 years
      Welcome to Unix & Linux! Please edit your question to add extra information, it is hard to read and easy to miss in the comments.
    • Kirti Jha
      Kirti Jha over 9 years
      @MartinvonWittich As I mentioned, it can't be found on my motherboard's BIOS/UEFI settings. Some says that it is on by default on new motherboards.
    • Kirti Jha
      Kirti Jha over 9 years
      Sorry @terdon, I'm not used to this site's formatting codes. Please check EDIT 1 for your question. I'm not really a hardcore Linux user.
    • terdon
      terdon over 9 years
      No problem, for future reference, the formatting tools are explained here.
    • Martin von Wittich
      Martin von Wittich over 9 years
      @eSPiYa oops sorry, you're right. I must've overlooked that :/
    • Kirti Jha
      Kirti Jha over 9 years
      @terdon thanks! Anyway, what do you think is the problem? When I try to run dmidecode --type memory It says that the maximum memory is 8GB under Physical Memory Array.
    • terdon
      terdon over 9 years
      I don't really know. I would try running a memtest and also booting into another OS to see if the RAM is available there. It is sounding more and more like faulty RAM and I don't know enought to judge whether it is possible that the BIOS thinks it's OK but the RAM is faulty. I would guess that yes but I don't know.
  • Kirti Jha
    Kirti Jha over 9 years
    cat /proc/meminfo MemTotal: 3424776 kB MemFree: 1360372 kB Buffers: 66616 kB Cached: 628480 kB SwapCached: 0 kB
  • Kirti Jha
    Kirti Jha over 9 years
    dmidecode --type memory Maximum Capacity: 8 GB
  • Kirti Jha
    Kirti Jha over 9 years
    I think PAE is already supported: flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm
  • Tyler Maginnis
    Tyler Maginnis over 9 years
    Then switch to a 32-Bit PAE Kernel and see if that brings your RAM back.