RHEL / CentOS Support 4GB or more RAM ( memory )

by on November 10, 2007 · 27 comments· LAST UPDATED December 27, 2008

in , ,

If you have 4 GB or more RAM use the Linux kernel compiled for PAE capable machines. Your machine may not show up total 4GB ram. All you have to do is install PAE kernel package.

This package includes a version of the Linux kernel with support for up to 64GB of high memory. It requires a CPU with Physical Address Extensions (PAE).
The non-PAE kernel can only address up to 4GB of memory. Install the kernel-PAE package if your machine has more than 4GB of memory (>=4GB).

How Do I Install PAE kernel?

To install PAE kernel, use yum command:
# yum install kernel-PAE
Output:

Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for kernel-PAE to pack into transaction set.
kernel-PAE-2.6.18-8.1.15. 100% |=========================| 207 kB    00:00
---> Package kernel-PAE.i686 0:2.6.18-8.1.15.el5 set to be installed
--> Running transaction check
Dependencies Resolved
=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 kernel-PAE              i686       2.6.18-8.1.15.el5  updates            12 M
Transaction Summary
=============================================================================
Install      1 Package(s)
Update       0 Package(s)
Remove       0 Package(s)
Total download size: 12 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): kernel-PAE-2.6.18- 100% |=========================|  12 MB    00:12
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: kernel-PAE                   ######################### [1/1]
Installed: kernel-PAE.i686 0:2.6.18-8.1.15.el5
Complete!

Just reboot the server and make sure you boot with PAE kernel i.e. 2.6.18-8.1.15.el5PAE:
# reboot

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 27 comments… read them below or add one }

1 Anjanesh November 11, 2007 at 4:24 am

Wanted to info regarding this since Im interested in a custom configured dell notebook with a total of 4GB RAM (2x2GB) with the intention of installing Fedora 8 or Ubuntu 7.10 but was wondering if Linux can ‘see’ 4GB of RAM unlike Windows which utilizes a max of ~3GB of RAM ?

Reply

2 nixCraft November 11, 2007 at 6:55 am

Anjanesh,

Just install kernel-PAE under Fedora 8 and you should able to use 4 GB – 64 GB RAM out of box :)

I’m not windows expert, but it does support 64GB or more RAM if you use 64 bit Windows Vista / 2003 Server. Keep in mind that 64 bit windows has huge software / hardware compatibility issues.

HTH

Reply

3 Dimitri November 11, 2007 at 6:51 pm

kenel-PAE isn’t available in CentOS 3/ RHEL 3 or CentOS 4/ RHEL 4 (at least, not on my systems). Instead, install and boot kernel-hugemem.

Reply

4 nixCraft November 12, 2007 at 6:29 am

Dimitri,

Yup, kernel-PAE is CentOS 5/ RHEL 5 / Fedora 8 only.

Reply

5 Herger November 16, 2007 at 1:51 pm

Hi all.
I am planning to buy a Dell workstation with RHEL 5 with 4 Gb ram.
If I had to install RHEL 3, for old CFD softwares, would i have problems in seeing the total ram ?
Thanks all and regards

Herger

Reply

6 ckolos November 19, 2007 at 7:46 pm

FYI, this is only for 32bit versions of RHEL/Centos… The 64bit versions don’t supply, nor do they need these extensions

Reply

7 odoylefm February 15, 2008 at 2:45 pm

I have a Red Hat 8, 64-Bit installation and the BIOS sees 4Gb of RAM, but Fedora only sees 3.1. It is an HP computer and the BIOS is very limited as far as configurable options. Why won’t Fedora see all the RAM?

Reply

8 Z. Qian February 25, 2008 at 11:33 pm

my PC Bios only reports 3.2GB memory available. Does linux has its own basic IO support? Or it use standard bios support for IO?

Thanks.

Reply

9 josh March 14, 2008 at 10:54 pm

older Intel chipsets (pre-965, including 945) do not support memory remapping – thus limiting access to the memory being overlapped by IO space.

Reply

10 nisha August 8, 2008 at 9:32 am

Just a quick question, is kernel-PAE required for CentOS x86_64 to recognize additional memory? I’ve been googling, but there’s no straight answer to this…from what i understand, it’s only required for x86 arch’s…i would appreciate your insight about it…thanks

*Note:apologies if this has already been answered, i would just like a second opinion, hope it’s alright :-)

Reply

11 nixCraft August 8, 2008 at 9:58 am

Noop, 64bit kernel can address 64GB / 128GB or more. PAE kernel = 32bit OS + 4GiB or more RAM.

Reply

12 nisha August 8, 2008 at 10:04 am

perfect, thank you ;-)

Reply

13 Sithu October 21, 2008 at 9:22 pm

Hi,

I’ve CentOS 5.2. Upgraded RAM to 32GB from 16GB. BIOS shows the increaed memory, but the OS still shows 16GB.

Could anyone help?

Thanks and regards
sithu

Reply

14 Mesut November 1, 2008 at 7:35 am

for rhel/centos 3.x-4.x, support 64GB memory too but kernel is not named as kernel-PAE…
check kernel-hugemem or something…

Reply

15 deeb April 6, 2009 at 11:07 am

I’ve just been looking into this. The new RHEL5 PAE kernel does not support memory above 16G. According to RH this was due to performance problems. If your applications will run in 64bit mode (X86_64) and you’ve got more than 16G, you should go 64bit.

cheers
deeb

Reply

16 Yuhong Bao June 2, 2009 at 3:36 am

Another advantage of installing a PAE kernel is that you can enable the NX support in recent CPUs to increase resistance against buffer overflow attacks. Non-PAE page tables has no space for the NX bit, thus PAE has to be enabled to get NX.

Reply

17 Anj Adu July 16, 2009 at 7:11 pm

We have 32 Bit Red Hat Enterprise Server 5.3 with PAE and the “top” command shows 32G total (which is the amount of installed memory”..) does that imply The PAE works beyond 16G ?

Reply

18 Corben August 11, 2009 at 5:20 pm

Hi

Just replaced RAM in my HP laptop (Now, I have matched pair etc.) and my BIOS recognizes 4GB of RAM.
OS Centos 5.2 kernel 2.6.18-128.4.1.el5PAE can see only 3.5GB.
#cat /proc/meminfo
MemTotal: 3505948 kB

What should I do? My system is almost upto date.

Cheers
Corben

Reply

19 Davis December 13, 2009 at 7:20 am

Very usefully information and easily to do ..
Now, my machine can suppot 8G ram!!
Thank you!!

Reply

20 Ross February 4, 2010 at 6:26 am

We’re analysing a problem on 32 bit RHEL 5 PAE kernel (fully up-to-date) on a Dell M610 blade (4 x quad core XEON, 48GB RAM) and, although we see all 48GB in “top” and “free”, the following simple program shows that we’re still limited to 3GB of memory per process.

#include
#include
enum {
  CHUNKS = 1024 * 32,
  MEGABYTE = 1024 * 1024
};
int main (void) {
  int i, j;
  void * chunk[CHUNKS];
  for (i = 0; i < CHUNKS; i++) {
    if (NULL == (chunk[i] = (void *) calloc(MEGABYTE, 1)))
      break;
  }
  printf("Allocated %d MB\n", i);
  for (j = 0; j < i; j++) {
    free(chunk[j]);
  }
}

Reply

21 DonEstefan September 18, 2010 at 3:23 pm

You don’t necessarily need a different Kernel.
When you are using a Multiprocessor (Multicore) Machine you should already be using the SMP Kernel (check “uname -a”).

[QUOTE]
The “SMP” kernel supports a maximum of 16GB of main memory. Systems with more than 16GB of main memory use the “Hugemem” kernel. In certain workload scenarios it may be advantageous to use the “Hugemem” kernel on systems with more than 12GB of main memory.”
[/QUOTE]I can’t post URLs but if you google “Red Hat Enterprise Server Version comparison chart” you will find the information in Note 5 on the bottom of the page.
Also check out the “Technology capabilities and limits” on the same page.

Reply

22 FSX October 14, 2010 at 7:14 am

I have recently upgraded memory from 4gb ecc to 12gb ecc on Dell PowerEdge 2950 server running RHEL 5.3.
Its showing 12Gb memory in RHEL but on SNMP monitoring its shows total memory 12gb and used memory 4gb max, and percentage usage of memory shows 99%, which was the reason to upgrade memory from 4gb initial to 12gb.
Any suggestions?
i am using PAE kernel.

Reply

23 mir March 28, 2011 at 5:21 am

Hi, I am using RHEL 5.3 (32 Bit) on HP DL380G6. I am getting File System Read Only error on my server. please suggest on this..
I am using PAE kernel
Thanks.

Reply

24 Muhammad Shakir July 22, 2011 at 9:34 am

I have upgraded memory from 16 gb to 64gb in CentOS 5.4 x64 bit server which is installed on Dell R710 server. In BIOS it is showing 64 GB but when i check in OS it is only showing 32 GB. Do you have any idea about this.

Reply

25 Enabled991221 October 25, 2011 at 8:46 pm

Hi.

How to PAE kernel install to FreeBSD 7.0?

Reply

26 Denilson August 6, 2012 at 2:36 pm

It helped me a lot. Thanks.

Reply

27 wanjohi November 27, 2013 at 1:46 pm

Hi, I have RHEL5.9 but do not have yum, which is the exact rpm I can download to install the kernel pae

Reply

Leave a Comment

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

Previous post:

Next post: