Ubuntu 4GB Ram Limitation and Solution

by on December 27, 2008 · 113 comments· LAST UPDATED February 21, 2011

in , ,

Q. I've total 8 GB RAM installed in my dual boot Ubuntu Linux 8.10 (32 bit) version HP workstation. But free -m command only shows 3291 (3G) memory. How do I use 8GB RAM under Ubuntu Linux?

A. You need to install Physical Address Extension (PAE) aware kernel under 32 bit Ubuntu Linux. It is a feature of x86 and x86-64 processors that allows more than 4 Gigabytes of physical memory to be used in 32-bit systems.

Without PAE kernel, you should see something as follows:
$ free -m
Sample output:

             total       used       free     shared    buffers     cached
Mem:          3291        801       2489          0         95        342
-/+ buffers/cache:        363       2927
Swap:         1906          0       1906

You have two options here as follows:

Option # 1: Use 64 bit Ubuntu Linux

64 bit Linux kernel will take care of 4G or more memory. Just grab latest 64 bit version and install it.

Option #2: Install PAE enabled kernel

Open terminal and type the following command if you are using Ubuntu version Ubuntu v9.04 and earlier:
$ sudo apt-get update
$ sudo sudo apt-get install linux-headers-server linux-image-server linux-server

If you are using Ubuntu v9.10 (Karmic Koala) and above, enter:
$ sudo apt-get install linux-generic-pae linux-headers-generic-pae
Once kernel images installed, just reboot your workstation, type:
$ sudo reboot
After reboot, login into your system and type the following command to verify memory usage:
$ free -m
Sample output:

             total       used       free     shared    buffers     cached
Mem:          8105       1292       6812          0         38        483
-/+ buffers/cache:        770       7334
Swap:         1906          0       1906
TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 113 comments… read them below or add one }

1 Stephan Goeldi December 27, 2008 at 6:40 pm

One should mention, that with 64bit Linux your applications will use about 160% of RAM (compared to 32bit). This is because of the different memory addressing. 32bit PAE kernel does not use more RAM. If you do not use special 64bit optimized programs (e.g. some sql apps etc.), 32bit with PAE is the best way to go.

Reply

2 Xiao Haozi December 27, 2008 at 11:54 pm

With 8GB of RAM, having slightly different memory mapping isn’t going to really be an issue unless they are using it for hardcore server usage (esp. java servers). Going 64bit is my recommendation, hands down. I’ve notice a lot of performance increases in many of the libraries over 32bit installs. For most of us, it’s just a matter of preference and I really prefer a solid 64bit installation.

Reply

3 kakyo December 28, 2008 at 3:15 am

Does Option #2 work for desktop version and for linux-rt kernels as well?
Many thanks.

Reply

4 blink4blog December 28, 2008 at 4:21 am

how about restricted drivers? i once tried upgrading it using 32-bit PAE but the result ended the system failed to initialize X windows.

Reply

5 nixCraft December 28, 2008 at 7:00 am

@blink4blog,

You need to first disable restricted driver. Install PAE kernel an d reboot. After reboot, enable restricted driver. This should fix the problem.

@ kakyo,

It should work.

@Xiao Haozi
You are right, you may gain 30-40% performance boost with 64 bit kernel and libs. However, many desktop apps are not ready for 64 bit stuff like multimedia. Anyways, it is matter of choice.

Reply

6 hackers_125 December 28, 2008 at 1:18 pm

for its not working.. i think the bios is lock the 4GB usage.. that me right..

11: None 00.0: 10102 Main Memory
[Created at memory.61]
Unique ID: rdCR.CxwsZFjVASF
Hardware Class: memory
Model: “Main Memory”
Memory Range: 0×00000000-0xc5d7ffff (rw)
Memory Size: 3 GB
Config Status: cfg=new, avail=yes, need=no, active=unknown

Reply

7 hackers_125 December 28, 2008 at 1:19 pm

but using the dmideco it show that my motherboard support up to 4g

Handle 0x000B, DMI type 16, 15 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 4 GB
Error Information Handle: Not Provided
Number Of Devices: 2

Reply

8 Aleidatron January 15, 2009 at 10:33 pm

With Option #1, you will max out at about 16 TB of RAM.

Reply

9 Richard Wolf VI February 2, 2009 at 8:22 am

I managed to use the server kernel, and successfully using PAE. Unfortunately, my WiFi card doesn’t work (even while being detected in lspci), so I lose my net connection. Any solution for that? My card uses the Atheros driver.

Reply

10 Richard Wolf VI February 4, 2009 at 12:40 pm

Nevermind, I solved it by enabling the driver (ath5k) manually in /etc/modules.

Reply

11 Brian February 11, 2009 at 8:35 pm

I have Ubuntu 8.04 – intel Quad with 4GB showing 3.2GB as above. I’m trying to decided to do the PAE or 64Bit. This is a desktop. I think its originally an Ubuntu Server install and then I install ubuntu-desktop.
I have a new Nvidia video card. I don’t know if I should install the new video card, then try to do the upgrade to PAE or do the PAE upgrade, then install the Nvidia card and restricted drivers.
Or just go 64bit install with the nvidia card already plugged in and hope stuff works!
I need to develop Java and Rails apps on this box.
Any thoughts?

Reply

12 nixCraft February 11, 2009 at 9:38 pm

@Brian,

Go with 64 bit if you do not plan to use lots of multimedia stuff as most plugins only works with 32 bit system.

You can install Nvidia card, install the PAE kernel, reboot the system. Download driver from offical website and install it or just enable restricted driver.

Reply

13 Lance Zigler February 19, 2009 at 2:33 am

This didn’t work for me at all:

% uname –r ; free -m | grep -w Mem
2.6.27-11-server
Mem: 3037 715 2322 0 21 296

Bios and dmidecode see the 4gb fine… any tips?

Reply

14 CC February 26, 2009 at 4:05 am

If I convert from desktop to server this way will I loose my GUI? I also run virtualbox so I would prefer NOT to have to any major changes to my system other than upgrade the kernel.

Thanks.

Reply

15 Vlad Nistor March 19, 2009 at 12:40 pm

Thanks a bunch! Just got 4Gb ram on my laptop and needed to use more than the 2.9 it was seeing.

Reply

16 eli April 1, 2009 at 4:53 am

I tried option #2, and I still only have 2.9GB, even though I have 4gb installed. Suggestions??

Reply

17 Wagner Montalvão April 17, 2009 at 5:11 pm

eli,

Assuming you have installed the 32bit modules suggested by Vivek Gite, try to run the following command as root/sudo:

apt-get install linux-restricted-modules-server

Reply

18 xiaoqiang April 23, 2009 at 12:22 pm

I tried , and it works. But the server kernel is bloody slow.Unacceptable.

Reply

19 nixCraft April 23, 2009 at 12:50 pm

I do not see any problem. We have several workstations used for engineering and R&D loaded with 8GB RAM or more RAM.

Reply

20 Wagner Montalvão April 24, 2009 at 1:15 pm

Vivek, have you upgraded to 9.04 yet? Does it come with the PAE enabled kernel?

Reply

21 ghettodev April 25, 2009 at 8:08 am

9.04 server kernel for x86 includes PAE and will recompile nvidia restricted with dkms automatically.

Reply

22 Natic April 30, 2009 at 11:00 am

Have installed the 9.04 server kernel and 4GB RAM in my Notebook free -n shows only 3.2 GB

Any suggestions?

Reply

23 lime May 4, 2009 at 7:00 am

dude, just install 64bit ubuntu. keep it simple

Reply

24 Nick May 6, 2009 at 2:37 pm

It’s not always that simple.

I’ve got 9.04/64bit on my vm server, but I can only see 3.5 of 4G. Dell’s BIOS is ‘doing me the favor’ of chopping out 512M because they never thought I’d put a 64bit OS on my 64bit CPU

If anybody knows how to force ubuntu to ignore ‘reserved’ on bios reported memory zones, I’m all ears.

Reply

25 Driklyn May 10, 2009 at 9:20 pm

Worked like a charm in Ubuntu 9.04. Thanks!

Reply

26 Domenico May 21, 2009 at 7:28 am

Really thank you………I’ve already done the option 2 and now I can see 3,9 Giga available (before 3 Giga).
Great!!!

Reply

27 Trevor May 25, 2009 at 7:17 am

Hi,
PAE enabled kernel (2.6.28-11 server) works on Ubuntu 9.04, enabling me to see 4GB RAM, but I lose the ability to suspend/hibernate.
Mobile Intel® GM45 Express Chipset
4GB PC2-6400 (2GBx2)
Intel® WiFi Link 5100AGN
Laptop specs:
http://b2b.sony.com/Solutions/product-detail.do?prodId=SEL-M-140144&catId=SEL-yf-dncat-71302

Has anyone got suspend/hibernate to work on the server kernel?

Reply

28 Genie June 9, 2009 at 2:10 pm

2 Trevor:

To use suspend/hybernate you must have two things:
- hardware support (you have it)
- Enough space in swap partition (for you choise swap space must be equal or greater than your RAM size, eq, no less, than 4GB)
For check, run:
cat /proc/swaps

Reply

29 Ittay June 18, 2009 at 6:20 am

@Genie: I don’t think suspend has any need of the swap. I experience the same problems as Trevor in my T61 but with the generic kernel suspend works fine even though my swap is only 2GB. what does suspend write to disk?

Reply

30 mizar June 20, 2009 at 10:36 am

I confirm that in 9.04 the update suggested for 32-bit desktop version in the blog works perfectly.

Also i have ATI hd3470 and restricted drivers were automatically updated.

Thanks !!

Reply

31 Geoff July 1, 2009 at 7:58 am

I did all the steps up there with a system that has 12gb of ram installed, but when I execute free -m It only shows up with 3014 total. Whats the next step down the road to more memory?

Also am I going to be able to get it to address all 12 gigs?

Reply

32 nixCraft July 1, 2009 at 8:53 am

Did you rebooted Ubuntu into PAE kernel?

Reply

33 Trevor July 1, 2009 at 9:00 am

Hi,
Thanks for the response. I have a big enough swap partition at 7GB and the computer will sleep/hibernate in the generic kernel, but it won’t in the server kernel.

-Trevor

Reply

34 Nikolay July 1, 2009 at 9:42 am

FYI : there is one more catch with the Ubuntu server kernel – you can not run VMWare
because of conflicting virtualization technologies. It is a pity Ubuntu does not support
desktop PAE kernel (as many, not to say most other distributions do). Of course there
is always the option of compiling a kernel of your own as described here:
https://help.ubuntu.com/community/Kernel/Compile
but many would feel uncomfortable doing that.

And one remark to the title of the article : unfortunately the limitation for memory is not even
4GB but 3 since 1GB of address space is set aside for purposes other than memory addressing.

Reply

35 tanveer July 12, 2009 at 1:14 pm

i have 512mb ram ddr1, i never new 4gb ram existed, does this mean i can get 4gb and use it on ubuntu and XP

Reply

36 DaveGK July 14, 2009 at 3:03 pm

I’m about to get a new laptop and am still undecided as to which way to go – i.e. 64bit or PAE. Probably PAE, as I have a fair amount of multimedia stuff on my present laptop, and I do need to run Sun VirtualBox (unfortunately, there’s still no adequate substitute for Acrobat Pro, CorelDRAW and, to a lesser extent, Photoshop). Will I be able to do that in Ubuntu server? Nikolay mentioned that VMWare won’t run with server kernel, what about Sun VirtualBox? Also all those niceties – Compiz, Cairo-Dock etc – will they be okay on server (might be a silly question, but server doesn’t sound like something designed for that sort of things) – I’ve only been using Linux for a month or so :)

Reply

37 nixCraft July 14, 2009 at 3:06 pm

You better go with 32bit oses to load all the stuff. 64bit is more suitable for server usage and not for multimedia or other windows apps.

Reply

38 DaveGK July 14, 2009 at 3:22 pm

Thanks, that’s what I suspected…
What about Cairo-Dock, Compiz and Sun VBox? Will they run OK in Jaunty server kernel?

Reply

39 desiNerd July 29, 2009 at 9:14 am

as far as I can understand if you want a faster processing and you can afford buying 64 bit OS(which I guess would be dirt cheap, if you are upgrading from the current 32-bit OS) better go for it. as some one already made it clear that 32-bit machine can’t address beyond ~3.6 gig memory, its better to have 4gig ram along with a 64-bit OS. obviously you will get a better performance and you always have the option of putting 32-bit stuffs on your 64-bit machine(more or less its works fine). 64-bit is the “in” thing, so you should better go for it.
yesterday only i ordered dell studio 15 with 64bit Vista home premium, 4 gigs ram, 320 7200rpm hdd, etc …i’m planning to install ubuntu 64-bit on this, i hope there wont be any problem. lets hope for the best. btw, thanks guys for all your reviews…

Reply

40 gonber August 4, 2009 at 7:23 am

#2 just worked out of the package! fine…

The details:

Linux xxx-laptop 2.6.28-14-server #47-Ubuntu SMP Sat Jul 25 01:18:34 UTC 2009 i686 GNU/Linux

total used free shared buffers cached
Mem: 4021 342 3678 0 4 170

any ideia on how to put intel turbo memory working?

thks

Reply

41 gonber August 4, 2009 at 11:14 am

just to add the restricted nvidia drivers updated automatically

Reply

42 Gregorio Espadas August 18, 2009 at 1:30 pm

It works really fine for me. Thanks!!!

Reply

43 Gnothi August 19, 2009 at 12:08 pm

I loaded the server kernel into desktop Ubuntu Hardy. It works fine with Sun VirtualBox and Compiz. Nvidia driver module automatically rebuilt. No apparent slowdowns.

Reply

44 David Litster August 24, 2009 at 5:21 pm

Thanks a lot for the tip! However, after I installed the kernel and rebooted, something really bizarre happened: My machine wouldn’t boot anymore. After the BIOS, it just sits with a blinking cursor. No grub prompt, no nothing. I can get it boot via the Hardy livecd, choosing “boot from the first hard disk”, but reinstalling grub, et. al., seems to have no effect. Does anyone have any idea why my bootloader would be hosed after a simple kernel upgrade?

On the plus side, I can now address all 4 GB of ram in 32-bit Hardy.

Reply

45 Lars August 27, 2009 at 12:16 pm

How do I get the 64bit kernel without new installation – I this possible and all applications will run (I only have VMware installed)?

Thanks & best regards from Germany

Reply

46 barontanaka August 30, 2009 at 10:56 pm

Option #2 work fine with me, many thanks !!!

Reply

47 Richard August 31, 2009 at 9:58 am

For those running VMware, or who want to recompile the kernel, I really recommend following this part of the Kernel/Compile page from the Ubuntu kernel team

This is a lot easier than the method shown in first half of this page. I just set HIGHMEM64G and unset HIGHMEM4G in the .config file, then did a ‘make xconfig’ file to check via the config GUI, then recompiled as per this howto.

VMware Server 2.0 is now working nicely with this custom kernel, 2.6.24 based. I didn’t try very hard to get it working with the normal Ubuntu Server kernel, but VMware didn’t work out of the box, hence going for a custom kernel.

Reply

48 Roy September 7, 2009 at 2:10 pm

I had 4025mb of ram installed, but only saw 3275mb. I have all 4025mb working now.
I copied the ($) the first time in the terminal, duh, don’t do that.
Took my PC about 5 minutes to DL and install. Very slick and easy.
Thanks

Reply

49 Pradeep Prakash September 14, 2009 at 11:13 am

Hi,
I have the latest Ubuntu 9.04 Desktop version installed on my T61 Lenovo and everything is working like magic except for the memory ( 2.9Gig available instead of the installed 4Gig). If I use the above method and install the server edition kernel,

1. Is it going to affect anything on my system? Like the suspend/resume/hibernate functions
2. Are there any other side effects? ( WiFi driver problem, display driver problem, sound card driver problem).
3. Also, I have recompiled some of the other software with my own customizations, Will it be affected? ( mplayer with CoreAVC to play HD, XBMC with a little modification)
( I think it should NOT affect any one of these, but wanted to confirm!!)
Thanks

Reply

50 Garry Cook September 29, 2009 at 11:13 pm

Followed the simple instructions to install the server kernel in Ubuntu 9.04. Nvidia and other kernel modules were automagically installed in the new kernel (very slick!). Compiz still runs smooth and Virtualbox still runs my Win7 instance just fine. No apparent bad side effects.

However ‘free -m’ still reports a total of 3275 bytes of RAM. So, the fix didn’t work for me.

I am definitely using the new kernel, as ‘uname -r’ shows 2.6.28-15-server.
This is running on a Dell D820 laptop. I guess I’ll check the BIOS and see if there are settings there that I need to change.

Reply

51 Jaroslav K. October 4, 2009 at 5:40 am

Don’t forget: if you see less RAM as physically is installed, it could be that your video card is using shared memory (especially in laptops). So go to BIOS and see how much of RAM there is set for video card.

Reply

52 sheck October 5, 2009 at 6:10 am

Installed kernel with PAE and enabled memory mapping in BIOS. Now OS sees all 8 GB that I have. No problems with Suspend/Hibernate or anything else, so far. Running Ubuntu 9.04 Desktop with server kernel. Intel Core 2 Duo CPU.

Reply

53 TS October 5, 2009 at 8:55 pm

I’m in the same situation as @Garry Cook, but I’m using a Dell Latitude D620. Any suggestions? I really need the full 4GB’s I just installed on this machine.

Reply

54 Garry Cook October 6, 2009 at 3:00 pm

@TS, it looks like we won’t ever be able to see the full 4GB. From what I’ve read (and I’ve been researching this extensively), this is a hardware limitation of the Intel Mobile 945 chipset. I was hoping there would be a BIOS update available to fix this, but it does not appear to be possible.
Many people continue to say that it is a limitation of a 32 bit OS. While this may be true, an upgrade to a 64 bit OS will not solve the problem for those of us with the Intel Mobile 945 chipset.

Reply

55 TS October 6, 2009 at 3:11 pm

@Garry Cook, thanks for your help. That is pretty upsetting. Does the same issue exist for Windows as well? Any idea how I can undo/uninstall everything I just did? For some reason, my VPN is not working properly after I ran “sudo apt-get install linux-headers-server linux-image-server linux-server”. It keeps saying:
Secure VPN Connection terminated locally by the Client
Reason: Failed to establish a VPN connection.
I have verified that this is not a VPN specific issue. I need this to work ASAP so anyone that could help me undo what I just installed I’d be greatly appreciative. I tried a simple sudo apt-get autoremove linux-headers-server linux-image-server linux-server (using ‘autoremove’) but that only removed 3 packages at ~93kb (said it removed the server files, but strangely enough it still exists and runs fine from GRUB). Any help would be appreciated. Thank you.

Reply

56 Pat October 12, 2009 at 1:46 am

option 2: works like a charm

Reply

57 eloiez October 27, 2009 at 8:12 pm

works fine for me (toshibe satellite pro P300-274)
suspend/resume is ok
hibernate/resume fails
No message in the log
Any Idea ?

Reply

58 Cam November 24, 2009 at 5:31 pm

Option 2 : Works fine for me too, Ubuntu 9.10
All restricted drivers are in DKMS, so automatically updated.
Thanks a lot !

Reply

59 Marc December 22, 2009 at 9:47 pm

Option 2 – Worked for me too.
Ubuntu 9.10 32-bit up to 6GB memory now.
Thanks very much!

Reply

60 joomla January 5, 2010 at 12:29 pm

thank you cyverciti

Reply

61 Michel Graciano January 14, 2010 at 11:40 pm

Option 2 – Worked for me too.
Ubuntu 9.10 32-bit up to 4GB memory now.
Thanks very much!

Reply

62 blink4blog February 5, 2010 at 1:44 pm

after some time i patronized here again via StumbleUpon and found that i were here back then. by the time i am writing now i already on the bandwagon of amd64 9.10 and all drivers work fine with me, at least nVidia graphic driver.

doing PAE does not really solve the entire issue because it creates another issue, i.e. for each process cycle of the CPU instructions set, the PAE get the CPU to do double the work just to achieve 64-bit wonders.

i try to explain using layman term, for more technical explanation, you have to heads off to Wiki.

just my 2 cents

Reply

63 arpagon February 5, 2010 at 2:05 pm

Option 2 – Worked for me too.
Ubuntu 9.10 32-bit up to 4GB memory now.
Thanks very much!

Reply

64 spb February 5, 2010 at 6:32 pm

I tried option #2. No dice.

# dmidecode 2.9
SMBIOS 2.4 present.
40 structures occupying 1532 bytes.
Table at 0x000E0000.

Handle 0×0000, DMI type 0, 24 bytes
BIOS Information
Vendor: Apple Inc.
Version: MBP22.88Z.00A5.B07.0708131242
Release Date: 08/13/07

Handle 0×0126, DMI type 19, 15 bytes
Memory Array Mapped Address
Starting Address: 0×00000000000
Ending Address: 0x000FFFFFFFF
Range Size: 4 GB
Physical Array Handle: 0×0121
Partition Width: 0

~$ uname -a
Linux spbdada 2.6.31-18-generic-pae #55-Ubuntu SMP Fri Jan 8 16:13:23 UTC 2010 i686 GNU/Linux

So the PAE kernel is running…

~$ free -m
total used free shared buffers cached
Mem: 3009 2916 92 0 29 384
-/+ buffers/cache: 2503 506
Swap: 0 0 0

But still only seeing 3Gs.. Any ideas?

Reply

65 Randall February 19, 2010 at 11:16 am

Option 2 worked wonderfully for me. I am new and this was my first successful operation in the terminal. I am using main edition of Mint 8 Helena on a Toshiba Laptop w/ Core 2 duo P7350 w/ 4gb ram. I experienced no difficulties with hibernation or suspension. Previous to the installing PAE, my system only showed 3GB whereas, now it shows 4012MB. Thank you for the easy solution!

Reply

66 spb February 25, 2010 at 10:16 pm

Fyi, this is my kernel config, so I don’t think it’s an issue.

cat /boot/config-2.6.31-20-generic-pae | grep HIGH
CONFIG_HIGH_RES_TIMERS=y
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_HIGHPTE=y
# CONFIG_DEBUG_HIGHMEM is not set

I’d really appreciate some help/pointers on this.

Reply

67 gfeng March 26, 2010 at 12:11 am

My ubuntu 9.10(karmic) 2.6.31-20 x86_64 kernel desktop has 4GB memory. dmidecode tells me as well. The system has 256MB graphics card, intel Quad cpu.

top, free, system-monitor tell me the memory only 3.2GB.

According to the above suggestions, it should show 4GB Ram. It doesn’t show me that? Why? What is the best solution?

Reply

68 Faisal March 26, 2010 at 1:11 pm

Hello guys, I need your help. I have tried option #2 but it does not work. Please help me.

Reply

69 Juan March 30, 2010 at 7:46 pm

Same pb here. Option #2 didn’t work for my Atom 330 based 9.10 ubuntu server. Still only 3.2 Gb of RAM recognized.

Reply

70 George May 24, 2010 at 8:07 pm

Opcion 2 don’t work

total used free shared buffers cached
Mem: 3014 865 2149 0 51 416
-/+ buffers/cache: 396 2617
Swap: 5773 0 5773

is the same value

Reply

71 gfeng May 26, 2010 at 8:01 pm

Opcion 2 don’t work

Reply

72 gfeng May 26, 2010 at 8:03 pm

Option 2 don’t work for me as well. It is the same. Is it possible the chipset doesn’t support 64-bit?

Reply

73 George May 26, 2010 at 9:47 pm

Check your memory
May be don’t work

Reply

74 Travis Low May 28, 2010 at 2:34 am

This worked like a charm. I have an HP ProBook 4510s and it had 2GB RAM. It was fine for normal use, but then I was having problems running virtual Windows machines on it while also running Tomcat with Hudson, and then it would swap like crazy when I opened Eclipse. So I bought another 2GB and only 2.9MB was available. I then switched to the PAE kernel and the full 4GB is now available. Thanks very much!

Reply

75 Andres Bustamante June 7, 2010 at 11:33 pm

It worked. I have a Toshiba Satellite with 4GB of RAM. Ubuntu 10.04.

Thanks.

Reply

76 yudi June 25, 2010 at 2:24 am

could those people with only 3.2gb showing up confirm whether they have an Intel i945PM. mine does and it only shows 3.2 before and after enabling pae. iread somewhere that it’s the limitation of the chipset.

thanks

Reply

77 Gerard July 24, 2010 at 6:12 pm

For all the people having issues with the PAE kernel still not seeing the full 4GB: I had this problem as well, and it turned out I had to enable “memory remapping” in my BIOS. Turns out this will make sure that the upper 2GB is mapped at address 4GB+. This means that if you then use a 32-bit kernel you will only see 2GB, but if you use a PAE-enabled or 64-bit kernel it should see everything.

Reply

78 Barry July 25, 2010 at 8:38 pm

Installed 4GB in my Sony Vaio VGN-NS140E. Running PAE kernel in Ubuntu 10.06 and. . .

3861 MB of RAM.

So I’m missing a few hundo here. If anybody knows why I’d love to hear a fix.

Still a cool tip, thanks much.

Barry

Reply

79 64bitguy August 30, 2010 at 8:41 pm

@Barry

Install Ubuntu 64-bit edition. ’nuff said.

Reply

80 gfeng August 31, 2010 at 6:19 pm

It could not solve the problem even installed Ubuntu 64-bit. I think it is bios problem for the shared memory machine

Reply

81 Subra September 3, 2010 at 1:28 pm

Worked for me. Thanks!
Earlier: 2.9 GB.
After installing pae: 3.9 GB
System: 10.04 (upgrades: 9.04->9.10->10.04, not a fresh install)

Reply

82 AngeloCuore September 22, 2010 at 4:29 pm

Worked beautifully on Ubuntu 10.04.

Had 2GiB and upgraded to 6GiB.

Only saw around 3.2GiB. After this hack, it sees all of the 6GiB.

Thanks a million for this hack.

Reply

83 Nour_aoi October 23, 2010 at 12:04 pm

Worked for me too.
Ubuntu 10.10 32-bit up to 4GB memory now.
Thanks very much!

Reply

84 Nour_aoi October 23, 2010 at 12:09 pm

Thanks very much from Egypt.

Reply

85 maltos November 9, 2010 at 5:10 pm

thanks it worked perfect on my compaq cq62215dx

Reply

86 surfer300 November 18, 2010 at 3:34 pm

I just put 6GB onto a motherboard Gigabyte GA-P35-DS3 with Ubuntu 32 bit desktop with PAE 10.04 Lucid. Have a look at this:
user@ubuntu-desktop with PAE:~$ free -m
total used free shared buffers cached
Mem: 6049 5857 191 0 68 843
-/+ buffers/cache: 4945 1103
Swap: 4102 0 4102
user@ubuntu-desktop with PAE:~$
Writing this comment six VMs are runing in VirtualBox and some applications on the host (Firefox, Thunderbird, …). All the activities use 4.8GB RAM of the 5.9GB which are offered by the system manager. That ist Linux :-) … I can not stop smiling.

Reply

87 mike August 22, 2012 at 5:59 am

works on ubuntu 10.10
I am also running some VMs.thanks!

Reply

88 Lesly December 11, 2010 at 7:22 pm

works!

Reply

89 Paul December 20, 2010 at 12:22 pm

Dual Boot: For those preparing too switch to Ubuntu 64 bit version and have Vista 64 bit installed I highly recommend using a separate hard drive to install the newest kernel 10.04 to. In addition unplugging your vista hard drive at installation time will prevent an overwrite to your MBR (master boot record) on your Vista Installation. In this fashion you can start either operating system from your BIOS not within Ubuntu. That way if you ever want to upgrade to Windows 7 your MBR won’t be a mess. Of course same follows you will need to unplug your Ubuntu installation if upgrading from Vista to 7. I gave my swap partition more than the 8 gig of memory installed so I could run other background programs at start up.
Comments:
2.6.32-26-generic #48-Ubuntu SMP Wed Nov 24 10:14:11 UTC 2010 x86_64 GNU/Linux
free -m
total used free shared buffers cached
Mem: 8003 1184 6818 0 96 486
-/+ buffers/cache: 601 7401
Swap: 9703 0 9703
Biostar TA790GX 128m
8 gig pny memory ddr2 800
AMD 9750 quad core cpu
Vista ultimate 64 bit/Ubuntu 64 bit

Reply

90 Per December 20, 2010 at 10:05 pm

that oneliner did the trick with 10.10 and 8GB

Reply

91 arat January 5, 2011 at 6:20 pm

confirming that option[2] works fine for ubuntu 10.10 desktop edition

Reply

92 gfeng January 5, 2011 at 8:01 pm

4GB RAM only map 3.2GB. dmesg logs

[ 0.000000] x86 PAT enabled: cpu 0, old 0×7040600070406, new 0×7010600070106
[ 0.000000] original variable MTRRs
[ 0.000000] reg 0, base: 0GB, range: 2GB, type WB
[ 0.000000] reg 1, base: 2GB, range: 1GB, type WB
[ 0.000000] reg 2, base: 3GB, range: 256MB, type WB
[ 0.000000] reg 3, base: 3327MB, range: 1MB, type UC
[ 0.000000] total RAM covered: 3327M

$ uname -a
Linux machine 2.6.35.9-64.fc14.x86_64 #1 SMP Fri Dec 3 12:19:41 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux

Reply

93 MaX January 18, 2011 at 9:36 am

I tried this on dell n5010 and it worked. Thanks Vivek

Reply

94 Tom March 11, 2011 at 1:17 am

It doesn’t work for my Toshiba P100 with Intel chipset 945.
See only 3GB RAM. Thanks anyway.

Reply

95 Jason Wagner April 6, 2011 at 2:33 pm

Worked perfectly on Ubuntu 10.10. THANKS!

Reply

96 joder666 May 2, 2011 at 7:33 pm

Thousand thanks mate this works like a charm on pinguy 10.10.1!!

Reply

97 Christopher Welle May 10, 2011 at 1:26 am

Does not work with Ubuntu 11.04 64bit. No PAE kernel’s are available for this version at the time of this comment.

Reply

98 rider on the road May 21, 2011 at 11:55 am

just installed 11.04 32 bit on my vaio f13z.. without any problem. Suggestion above rised my RAM to 8GB. I hope there will be a ia64 version of 11.04..

Reply

99 Aaron June 4, 2011 at 2:33 pm

Hi,

I have an eMachine D520 with Ubuntu 11 and Vista 7 with photoshop and others on VirtualBox. I want to upgrade to 4GB ram but the PC is not booting when I install the other 2GB ram stick. My video card is using 64MB. aaron@soaresart.com
Do you think PAE will help it or not?
If PAE will help it, will virtualbox still work? coz its what I use to process my images as Im a photographer and cant afford any down time.
BTW, both ram sticks are Crucial 2GB 200pin ddr2 sodimm 256mx64.

Thanks.

Reply

100 Karim M July 27, 2011 at 12:26 pm

I would like to add that using the 32-bit version means your software is not able to use the additional CPU registers of the AMD64 architecture.
Plus, if you use PAE, your system will have a 36-bit address space (up to 64 GiB), but each individual process will still have only a 32-bit address space (i.e. will only address 4 GiB).

Reply

101 Arun Gandhi July 29, 2011 at 3:18 pm

I am using a physical machine for server
Configs are
Core2Duo E 4400 2.Ghz (EM64T capable)
4x2GB DDR2 667 Mhz RAM in Dual Channel
in my BIOS it shows total RAM as 8096 MB
and i Did download Ubuntu server 10.04.3 64 Bit for AMD 64 platform(which has support for xeon core2Duos and core2Quads etc)
and installed it .
when i type in terminal ” free -m ” to check the ram it shows as 3216 GB

and for cpu info when i typed this ” grep flags /proc/cpuinfo ” i got the following flags

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm

also this command clearly verifies that my CPU suuports PAE

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

CPU Modes:( Source Ubuntu Forums )

lm flag means Long mode cpu – 64 bit CPU
Real mode 16 bit CPU
Protected Mode is 32-bit CPU

And after 10.04 LTS server edition 64 bit i tried 11.04 64 bit server edition still am facing the same problem just 3.2 gb ram is visible with ” free -m ”
when using ” dmidecode | grep Size | grep MB ”
it shows 4 x 2 GB modules connected to the system ..
please help me with this :S

Reply

102 Karim Moussa August 1, 2011 at 3:15 pm

Have you already activated “memory hole remapping” (or something) in your BIOS? The BIOS itself sees all the 8 GiB, but for the OS to see everything the remaining memory must be mapped above the PCI memory hole. Apart from that, I don’t see why an amd64 OS version wouldn’t address memory the BIOS does.

Reply

103 R Shewade August 13, 2011 at 11:14 am

This is really cool and works fine on Ubuntu 11.10 as well

Reply

104 Prashanth August 29, 2011 at 10:19 am

I’m interested to get some more details of your Ubuntu 11.10 experience. Which of the 2 solutions did you use (64 bit or PAE)? Did you use Xubuntu? How much RAM on your system?

Thanks.

Reply

105 grillermo September 3, 2011 at 6:47 pm

Worked great for me on my Asus N61jQ i got that extra gb of ram and had absolutely no video problems at all.

Reply

106 gecko October 4, 2011 at 2:07 pm

Thank you very much!!!
Followed the 2nd option…
On Ubuntu 11.04
intel 920
Asus P6T
OCZ 3G1600LV DDR3

total used free shared buffers cached
Mem: 6033 1059 4974 0 202 395

Thanx mate!

Reply

107 gilles November 9, 2011 at 11:24 am

It works like a charm for me.

Reply

108 Alex November 17, 2011 at 6:44 pm

That’s great! Thanks a lot!!

Reply

109 Tornike November 22, 2011 at 6:18 pm

I followed the second option, but after the ‘free -m’ command I still get 3GBs of RAM in the list of results while I have 4 installed. The ‘apt-get install linux-restricted-modules-server’ command listed the following:

‘Building dependency tree
Reading state information… Done
E: Unable to locate package linux-restricted-modules-server’

I read some advice regarding restricted packages in comments above – is this related to that and what exactly should I do?

Thanks in advance

Reply

110 Mian Kashif Ali March 6, 2012 at 5:08 pm

thanx so much for this wonderful tutorial..

Reply

111 Mojtaba April 3, 2012 at 7:10 am

Thanks for your effort and time :)

Reply

112 croman April 10, 2012 at 1:28 pm

Tnks its work, very good in vostro 1320 with Ubuntu 11.10

Reply

113 Paul July 23, 2012 at 9:55 am

Thanks a lot!!!

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: