Quote:
Originally Posted by lazlow
Look for a PAE kernel if you have to stick to 32bit (64bit handles it natively). Be aware that PAE will take a performance hit (translating 32bit to 40bit?)
|
That is a misleading statement. Especially as a comparison of 64bit mode vs. 32bit PAE.
The trivial performance difference is in the page table structure.
32bit non PAE uses a 2 level page table (32 bit to 32 bit translation).
32bit PAE uses a 3 level page table (32 bit to 36 bit translation).
64bit uses a 4 level page table (48 bit to 40 or more bit translation).
Each additional level of page table adds a trivial performance cost to the kernel whenever any remapping occurs plus a trivial performance cost to ordinary code whenever a TLB miss occurs. Usually the total difference is not big enough to even measure with performance testing.
That translation is doing far more than maybe changing the number of bits. There is no option to not have the translation. The only option in 32 bit mode is between the two level table and the three level table.
Quote:
|
and each individual process will still have the 32bit limit.
|
non PAE 32 bit, the application is limited to 3GB virtual and the kernel to 1GB.
32 bit PAE can be enabled without changing that (I'm sure, because the 32 bit Centos systems here run that way).
In at least some kernel versions, I have read online that 32bit "PAE" can be enabled in a way that increases application virtual memory from 3GB to 4GB and increases kernel virtual memory from 1GB to 4GB. I wish I knew the details of what turns that on in configuring the kernel. In fact that feature really has nothing to do with the CPU PAE feature, but I've read that the two are intertwined in the kernel build choices (again that's the part I don't understand).
That option may add a lot of overhead and likely some instability as well, because all communication between user mode and kernel mode suffers from being in separate address spaces. A 64 bit kernel can give 32 bit applications full 4GB virtual memory without the extra overhead of separate address spaces. So if you really want to run 32bit applications with full 4GB virtual (I do quite often) use a 64bit kernel.
Quote:
Originally Posted by amreek
Can someone help with showing me what the stepos are to upgrade the existing kernel to the new i686 please
|
I know all the concept level discussion above is not the detailed step answer you want. Hopefully someone who knows that answer will post it.
I don't know whether you can simply download the kernel you need or whether you must build it, and if you must build it, I don't know what config choices you need. Sorry.
I think there may be some extra complications in Red Hat licensing, beyond any technical issues (memory limit per license level). When there were such issues on a server here, the person upgrading it simply switched from Red Hat to Centos.