Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I don't think anyone has ever tested that much RAM with 32-bit, and I remember Linus T saying that they would have to be crazy to do so, and he doesn't want to support it.
Anyway, you can run more than 4GB using PAE, but PAE is a hack and you will have some overhead (performance loss), and no single app can use more than 4GB still.
We normally use 64bit os, but this time 32bit rhel5 has been installed on one of our db servers and this got 8gb phisical memory. In this server every 4days "out of memory"(ERROR 5 (HY000): Out of memory (Needed 33554404 bytes)) is coming and we need to restart the MySql. I think it could utilize only 4gb of physical memory and this leads to this error message. We have got other DB servers with 64bit os and there also v are running the same kind of application which fetch the data from the DB and we are not facing any issues like this.
We normally use 64bit os, but this time 32bit rhel5 has been installed on one of our db servers and this got 8gb phisical memory.
You should check whether you have a PAE kernel or non PAE kernel. If it is not PAE, you should change to PAE.
Quote:
In this server every 4days "out of memory"(ERROR 5 (HY000): Out of memory (Needed 33554404 bytes)) is coming and we need to restart the MySql.
I'm not sure whether that is hitting a limit in physical memory or virtual memory. If it is a virtual memory limit, changing to a PAE kernel would not fix that problem.
Quote:
I think it could utilize only 4gb of physical memory and this leads to this error message.
A non PAE 32 bit kernel can only use up to 3 and a fraction GiB of physical ram. It cannot use 4GiB. The exact value of "3 and a fraction" depends on the BIOS (not on Linux). It is often less than 3.5GiB.
A PAE 32 bit kernel can use up to 64GiB of physical memory. Depending on how the system is used, it is likely to run out of kernel virtual memory well before using 64GiB physical. So that 64GiB is not normally considered a practical limit. 16GiB is closer to the correct practical limit. It should be fine for the 8GiB you have.
User virtual memory per process is limited to 3GiB in 32 bit Linux, regardless of whether you have PAE. That is usually not an issue. Usually many processes are running, so that 8GiB physical would be used without any one process using more than 3GiB virtual. But your use of MySql might be unusual. If you already have a PAE kernel and get the error you described, it is likely the 3GiB user space virtual limit.
From the valuable inputs from you let me conclude that 32bit Linux OS with PAE kernel can use more than 4gb ram. But all the process will b restricted with a limit of 4GB physical ram.
Can i know is that applicable for a single process? Say multiple MySQL or Java process is running, each MySQL or Java process can use up to 4GB of physical memory or the whole MySQL or Java can utilize only upto 4GB physical memory?
PAE will allow the operating system to use more than 4GB of RAM, but no single process can exceed that limit.
This is the best way to put it. Each process can only use 4GB RAM.
However, jefro may be right in that there may be a memory leak if RAM usage constantly increases, even after closing programs. Check this using top or other program.
Last edited by H_TeXMeX_H; 06-10-2011 at 07:05 AM.
Say multiple MySQL or Java process is running, each MySQL or Java process can use up to 4GB of physical memory or the whole MySQL or Java can utilize only upto 4GB physical memory?
Each process is limited to 3GB virtual ram, not 4GB physical ram.
If you had two MySQL processes, each using their maximum of 3GB virtual ram, some of their virtual ram would not be resident physical ram and some of their virtual ram would be shared between them, so their combined physical ram use would be significantly less than 6GB, but might be more than 4GB, maybe even more than 5GB.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.