At Thu, 25 Nov 2010 21:38:42 +0800 (CST) CentOS mailing list centos@centos.org wrote:
Anyway to make it work on CENTOS 4.8 X86?
We don'y want use X86_64 or Virtulation due to application issue (DB).
Do you know for sure that the application cannot run as a 32-bit application under a 64-bit kernel? Have you tested it? Nobody is suggesting that you re-compile for 64-bits and you don't need to.
Note: a 32-bit application process can only access 4gig max (this is its address space limit). You realize that any given *32-bit* process [tree] can never access more than 1/16th of the 64gig of physical RAM. Even if your application is multi-threaded, the total combined address space of a 32-bit multi-threaded process tree is 4gig (the threads share the same address space). If you are running multiple *independent* processes, that yes you can use more memory, but no more than 4gig per 32-bit process [tree]. Do you understand what this means? Do you understand that running a 32-bit OS on a machine with 64gig of physical RAM is pretty much meaningless, and as you have discovered does not work well.
The PAE kernel only really works properly upto 16gig. You can switch to the hugemem kernel and take a performance hit.
Your options:
1) pull 48gig of ram out of the machine and go from there. With the PAE kernel you can't really use that 'extra' 48gig of RAM anyway (as you have discovered).
2) switch to the hugemem kernel and accept the performance hit (this is probably a lose-lose option). There is no real advantage to do this.
3) install the 64-bit kernel but continue to use 32-bit user space application code. This really should work. Have you even tried this? Eg on a test system. It really is not going to cost much to get a 'little' 64-bit desktop machine and install the x86_64 system and see what happens when you run your application.
4) install xen with a 64-bit kernel dom0 and install one (or more) 32-bit domUs (with reasonable amounts of RAM (eg 4gig) and run your application in the 32-bit domUs. Your application should not know the difference -- it will see a 32-bit environment. Have you even tried this, Eg on a test system (see above).
how come we been run CENTOS 3.9 X86 on this server for few years and NO problem?
CentOS 3 uses a 2.4 kernel, which is different from the 2.6 kernels in CentOS 4 and 5. I'm guessing you *probably* had installed the hugemem kernel, which would have 'worked' (as in not caused the problems you are seeing). It is also possible that the 2.4 kernel simply did not 'see' the 64gig of RAM or something like that (kernel bug or kernel limitation).
--- 10/11/24 (三),Kwan Lowe kwan.lowe@gmail.com 寫道:
寄件者: Kwan Lowe kwan.lowe@gmail.com 主旨: Re: [CentOS] CENTOS 5.5 X86 continue get "out of memory" error????? 收件者: "CentOS mailing list" centos@centos.org 日期: 2010年11月24日,三,下午7:31 On Wed, Nov 24, 2010 at 7:27 PM, mcclnx mcc mcclnx@yahoo.com.tw wrote:
Thank you for answer.
This server used to run under CENTOS 3.9 X86 and No
problem. 痃ue to application can not use CENTOS 3.9 we need upgrade to CENTOS 4 or 5.
If I re-install it and use CENTOS 4.8 X86, will
problem gone or not?
No, problem will remain. _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos