Every now and again I see a post about which kernel seemed to work best and I wonder why more forums don’t include a guide like this.
Of course we’re talking about Linux, and many people will have strong opinions about their preferences.
Essentially the basics are:
- 32 bit kernels commonly including i-386,486, etc up to i-686-pae
- 64 bit kernels i.e. x86_64
The 32 bit kernel even with the pae extention is not truly 64 bit but does it matter? In most cases if you are running with less than 4Gb of ram it really doesn’t. It can be a strong preference to use a 64 bit kernel in a system that can handle it with less than 4Gb of Ram but you are kind of defeating the advantage of the pae kernels.
64 bit operating systems have been around for awhile and Linux is not an exception. While there are plenty of software patches that make multiarch support reasonably easy, the question becomes about resource use, speed, program stability, and other possible drawbacks.
32 bit operating systems are in no way less capable on 64 bit machines, in fact depending on your setup they run code almost twice as fast in some instances.
Pae or Physical Address Extention simply means that the machine can move more than 4Gb of memory at a time so on a 64 bit machine a 32 bit operating system with pae can naturally run native code much more quickly.
It only really becomes prudent to use 64 bit operating system when you are using resource heavy programs by themselves and need every bit of available computing power rather than speed.
Often when you download a Linux iso and make an installation you have no idea which kernel to choose. But you can find out by checking the forums in some cases. In Linux Mint the software update tool shows the recommended kernel for your system, and usually it is the same kernel whether it is 32 or 64 bit so essentially switching kernels might become secondary to deciding whether to use 32 or 64 bit systems.
I have both, and until recently hadn’t tested them against each other however the 32 bit does seem faster in Linux Mint on two of my computers, while the 64 was definitely faster on one of them. All of these were 64 bit machines, and to test what was really happening I used Skype, with a movie going in the browser, and 9 programs open. With 2GB ram being the avg I saw plenty of cpu spikes but never hit the ram threshold to slow down the video or mess up the skype. (It did hang when I did this on LM-16 Petra)
Of course kernels are constantly evolving to include more support and safer coding practices that help eliminate vulnerabilities. A kernel with nvidia support headers will use very different configurations to accomplish some tasks than a mesa driven kernel header set.
Contributing factors to consider:
- Chipset, whether intel, nvidia, or amd etc can have a huge impact on which programs might become problematic on your system.
- Drivers, related to above there are drivers that can impact performance in really big ways especially graphics performance.
- Hard Drive performance, (Obviously ssd makes much of the speed a non issue but still worth knowing)
- Configured kernel & headers… The entire purpose of the article concludes in your discovering if your system even supports pae and/or 64 bit
If reading the flags to find out if your machine supports lm or long mode was your deciding factor in choosing a 64 bit os don’t be surprised if it actually still performs much better with an i-686-pae kernel.
Oh and Windows and Mac users are in the same situation during installations with one major exception, in Linux we get our drivers automatically and can simply add different ones if we want to. So if you are upgrading to the next Windows or Mac system you might want to check this article when selecting an OS to install.
And also remeber to go download the drivers you’ll need, unless you are running Linux in which case you’re usually covered.