Introduction, ah it will be boring, skip below first screenshot to get the kernel compilation how to.
But if you have time to read and patience to hear, good luck with the following paras, :)
After long time, I am finding a bit of free time and used my leisure time to build i7 optimized kernel, recorded every command into script, install and test and create this article for later reference for anyone who would wish to build/play around with kernel ... and know what?
I followed my own earlier article to build this kernel, why not?
My memory is not unlimited and after many tries with Ubuntu, Fedora, Kubuntu and in between some heavy office work, some boring books to read from libraries (due to due dates), exploring my xperia phone with ics updates, fixing my windows 7 which gobbled a whole day, updating my friends galaxy s2 to ics, googling cars, visiting relatives, spending my time in doctors lobby and much more day to day stuff ...
My linux sense triggered again to build and play with Kernel 3.4
This time, I do not have Ubuntu (sorry Unity I am damn confused how to use it)
It hardly matters, I have a better Ubuntu which is Mint 13 with Cinnamon. Now the base is Ubuntu 12.04 and everything related to kernel compilation is same to my happiness.
I have been too lazy to touch Mint and build kernel, as it is quite stable and does not give me problems to look inside or play around. But hey, I am not going to let Mint spoil my geekiness
Here I come, Mint, to shatter your stability and perched laziness by pushing my custom built kernel into you to displace your rock stable kernel
Come on gutsy guys, if you dare, you could get yourself into kernel compilation voyage. If you are faint hearted, be happy with Mint 13 default, do not even touch it
Read ahead, buf if you are impatient to build and try the fruits of my efforts, scroll down to the bottom and you have the download links. This time I tried google drive for sharing and it should be easy to download (tell me if you like)
Straight to the point, here is the Mint 13 screenshot showing new kernel running
To build Kernel 3.4.4 in Mint13 or Ubuntu 12.04 yourself follow this steps
- Install Build dependencies
- Download Kernel 3.4.4 and Ubuntu patches
- Extract and apply Ubuntu patches
- Create i7 flavour and tweak kernel config for i7 flavour
- Tweak Makefile for optimizing
- Build
- Optionally install xorg x-swat ppa and upgrade
- Reboot and Test
I will try to explain each step in this article
Install build dependencies
Execute these apt-get commands as a sudo user from terminal
sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge libncurses5 binutils-dev libelf-dev libdw-dev libnewt-dev libncurses5-dev
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get --no-install-recommends install asciidoc xmlto
Optional: GCC 4.7 in Ubuntu 12.04 or Mint 13
If you want to build using gcc 4.7 then follow these steps to install gcc 4.7 in Ubuntu 12.04 from PPA
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.7
sudo apt-get install g++-4.7
Download Kernel sources and Ubuntu patches
You could download the kernel 3.4.4 sources from kernel.org and Ubuntu patches for kernel 3.4.4 from kernel ppa directoryIf you prefer not to worry downloading individually, you could just copy and paste these commands in command line and let wget do the downloading job for you
mkdir Builds
cd Builds
wget -c http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.4.tar.bz2
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.4.4-quantal/0001-base-packaging.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.4.4-quantal/0002-debian-changelog.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.4.4-quantal/0003-default-configs.patch
Here is a screenshot of wget downloading kernel source in command line
Here is a screenshot showing how I got the download links of ppa for wget, you would not need this if you just use wget given above
Here is a screenshot showing efficient wget completion of sources and ubuntu patches
Extract and Apply Ubuntu patches
You could use gui to unzip the bz2 kernel tarball, but if you prefer command line, use the following commandExtract
tar xjvf linux-3.4.4.tar.bz2
A screenshot showing the same in action
Soft Link linux folder
Create a soft link for the extracted folder and change to the linux folder using cd
ln -s linux-3.4.4 linux
cd linux
Apply the patches
From the terminal do the following from inside the linux folder, see previous step to know what I mean as linux folder
patch -p1 < ../0001-base-packaging.patch
patch -p1 < ../0002-debian-changelog.patch
patch -p1 < ../0003-default-configs.patch
Create i7 flavour
Before creating a new kernel flavor, we give execute permissions for the build scripts
chmod -Rv +x debian/rules
chmod -Rv +x debian/scripts/
Clone existing flavor
cp debian.master/config/amd64/config.flavour.generic debian.master/config/amd64/config.flavour.i7
Prepare
first clean and update the new flavor
fakeroot debian/rules clean
fakeroot debian/rules updateconfigs
copy existing config from rock stable 12.04 kernel using uname -r, do not save it in .config, as this file is heavily modified when calling editconfigs
cp /boot/config-`uname -r` stableconfig
Run editconfigs
Give yes to i7 config and no to all other configs
fakeroot debian/rules editconfigs
Load alternate config and choose stableconfig which is untouched by editconfigs, save alternate config and save .config after changing processor type and kernel frequency
Here is a screenshot showing loading of stable config
Change processor and processor frequency
Screenshot showing chaning processor type
Screenshot after processor type change
Screenshot with default frequency
Screenshot with frequency modification
After processor frequency modification
Before exiting, save the config as .config by selecting save alternate config
Adjust abi
cp debian.master/abi/3.5.0-0.0/amd64/generic debian.master/abi/3.5.0-0.0/amd64/i7
cp debian.master/abi/3.5.0-0.0/amd64/generic.modules debian.master/abi/3.5.0-0.0/amd64/i7.modules
sed -i s/getall\ amd64\ generic/getall\ amd64\ generic\ i7/g debian.master/etc/getabis
sed -i s/\=\ generic/\=\ generic\ i7/g debian.master/rules.d/amd64.mk
cp debian.master/control.d/vars.generic debian.master/control.d/vars.i7
sed -i s/\"Generic\"/\"core\ i7\"/g debian.master/control.d/vars.i7
Tweak Makefile
You can change makefile manually to update the processor arch to corei7 (corei7 is target instructions for i3, i5 and i7 intel processors)
sed -i s/\=\ gcc/\=\ gcc\ \-march\=corei7\ \-mtune\=corei7\ \-pipe/g Makefile
sed -i s/\=\ g++/\=\ g++\ \-march\=corei7\ \-mtune\=corei7\ \-pipe/g Makefile
sed -i s/core2/corei7/g arch/x86/Makefile
sed -i s/core2/corei7/g arch/x86/Makefile_32.cpu
Optional: If you want to use gcc4.7 for building then use the following instead of the above
This changes gcc to gcc-4.7 and g++ to g++-4.7, also mtune is changed to core-avx-i to optimize for the latest i7 processors with avx instructions
sed -i s/\=\ gcc/\=\ gcc\-4\.7\ \-march\=corei7\ \-mtune\=core\-avx\-i\ \-pipe/g Makefile
sed -i s/\=\ g++/\=\ g++\-4\.7\ \-march\=corei7\ \-mtune\=core\-avx\-i\ \-pipe/g Makefile
sed -i s/core2/corei7/g arch/x86/Makefile
sed -i s/core2/corei7/g arch/x86/Makefile_32.cpu
Build and install
We do a clean build of headers and kernel image with newly created i7 flavor
fakeroot debian/rules clean
skipabi=true skipmodule=true fakeroot debian/rules binary-headers
time skipabi=true skipmodule=true no_dumpfile=yes fakeroot debian/rules binary-i7
Install the newly built packages from previous directory by using cd
cd ..
sync
sudo dpkg -i linux-headers-3.4.4-030404_3.4.4-030404.201206221555_all.deb linux-headers-3.4.4-030404-i7_3.4.4-030404.201206221555_amd64.deb linux-image-3.4.4-030404-i7_3.4.4-030404.201206221555_amd64.deb
sync
Optionally install xorg ppa for nvidia latest drivers
if you face problem in building dkms modules of nvidia, here is how I resolved it
Rebooted into new kernel, I added xorg x-swat ppa, updated through synaptic and upgraded all nvidia packages
sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get upgrade
Reboot and Enjoy
After installing newly built kernel, reboot into kernelHere are the,
Download Links
SHA256SUM of above in order
- ba18d38b88a621b8758a2293365b6750da298e262946a635044d81eed1cf501c linux-headers-3.4.4-030404_3.4.4-030404.201206221555_all.deb
- 8c050642b90de73d9b3a8cfad3e072d63406d6b49a89422e4c8f616d8520a77a linux-headers-3.4.4-030404-i7_3.4.4-030404.201206221555_amd64.deb
- c48586472892897c2ee4362976708f8bcbdd4f10369b82943b053eab99f611f0 linux-image-3.4.4-030404-i7_3.4.4-030404.201206221555_amd64.deb
- d85d8f0ef88627633c519d5ba197a19216815644c00185f674052d772a59d0cc Kernel3.4.4Compilation
Below are the download links of kernel and headers built using gcc-4.7
- Kernel Headers All
- Kernel Headers
- Kernel Image
- Script to Build (save this file and give it execute permissions using chmod +x or you can execute all the instructions one by one after reviewing :) )
SHA256SUM of above in order
- 49e25d90ddabcbc56e8c43bc1702791e36ef74b80c5f72542ad6afbb9939e8f9 linux-headers-3.4.4-030404_3.4.4-030404.201206221555_all.deb
- d18401bc72902f559fac2153b4568d634e4b4863addcba139a997f56feb32bd3 linux-headers-3.4.4-030404-i357_3.4.4-030404.201206221555_amd64.deb
- 400864ae46f3f898e567b0d77097ee0c46861d9d0537bf21440005749c2810e7 linux-image-3.4.4-030404-i357_3.4.4-030404.201206221555_amd64.deb
- bf2baa2cedd9ee9e194e35ad4ef56f511f2fa557a4ce56305a8bb7f32d1789e9 KernelCompilation344UsingGCC47
Kernel 3.4.6 optimized for i7 (64 bit)
SHA256SUM of the above in order
- c7870ec1a3e3e9bd30a46fd9816feb9f4c574fb063865b13aca4ea977ae53f57 buildkernel3.4.6.sh
- c10441220d94221155a50d13ba7ef448052e385ff897837b48ec0f7f9b552ab0 linux-headers-3.4.6-030406_3.4.6-030406.201207191609_all.deb
- 87758a8b1c2b93e025be041a2eb0fbbd1bc4f2e7d6411d16f8535ef71aba660e linux-headers-3.4.6-030406-i7_3.4.6-030406.201207191609_amd64.deb
- 1f801329bf41e53fc0b43526ad0d6f7827a4f752ff4bce49c0c6f037b8180879 linux-image-3.4.6-030406-i7_3.4.6-030406.201207191609_amd64.deb
- c6a3f6996242af24e719f3c6e029749a052954328efb4daa2cca87ead81977d7 buildkernel352.sh
- 47a8dbc136af8ff1331ddcd5841a226242ba3ae635534bb0c3f0b9dcead1ef5f linux-headers-3.5.2-030502_3.5.2-030502.201208151151_all.deb
- 6965992662a3a4db3b7c02bcb9f0c4dd60f61dbb7c930485f6b5fc806b41e101 linux-headers-3.5.2-030502-i7_3.5.2-030502.201208151151_amd64.deb
- 25807da234187423ff746edc2976bf2aa4c81a6832f9dc1b725ca63410022350 linux-image-3.5.2-030502-i7_3.5.2-030502.201208151151_amd64.deb
By the time, I spent time editing and fixing scrolling, pre tag, bold, overflowing text, english mistakes, grammar and html annoyance, I lost patience and got irked
ReplyDeleteI will clean and rewrite this in openoffice, till then forgive me
But that will be another time I find time
Since default compiler in Ubuntu12.04 is GCC4.6, this kernel will be built using that.
ReplyDeleteFedora17 is already using GCC4.7 .
Any way to compile the kernel using GCC4.7 in Ubuntu12.04/Mint?
Will give it a try, does gcc 4.7 produce faster code?
ReplyDeleteI managed to compile kernel with GCC 4.7, will try out and update this article
ReplyDeleteGreat!
ReplyDeleteDo you have a "AVX" supporting CPU?
if yes, does the kernel compile with "-corei7-avx" for Sandy-brisge and "-core-avx-i" for Ivy-bridge processors ?
I dont have avx, but I have added mtune for avx
DeleteWhen updating the article, please add the instructions to install GCC4.7 on ubuntu12.04 .
ReplyDeleteI was searching on the net, but couldnt find any tutorial to install GCC4.7 on U12.04 . All i could find was the news "U12.10 to use GCC4.7" .
Sure, I added ppa for gcc 4.7 and changed makefile to use this gcc instead of default gcc
DeleteUpdated article
DeleteHeadings with optional describe how gcc4.7 to be installed and makefile changed
Download links for kernel compiled with gcc4.7 is appended
so have you updated the blog with these changes?
ReplyDeleteI haven't, I am doing it now
DeleteUpdated
Deleteif you hate Unity, there are other options like :
ReplyDelete1. cinammon desktop : gnome2 with gnome3 tech. great, and increasingly the only desktop env that is practical for multitasking.
2.gnome3 : as minimal as unity, but better IMO
3.Ubuntu 2d : Gnome2 like UI.
4.enlightenment desktop : highly minimal. not for serious work. but good "effects+theme". very different from the other UI's.
I have settled on Mint 13 cinnamon which uses cinnamon desktop, I tried gnome3, still not that great as cinnamon
DeleteIs ubuntu2d still available in Ubuntu 12.04 ? Is this the samething as Mint Mate edition ?
Enlightment, I love that engage taskbar where icons zoom like Mac
ubuntu2d is unity but with a top pannel. looks like gnome2.
Deleteyou can install it via a PPA. not available by default in u12.04.
Ok
Deletefor the GCC4.7 builds you provided, the optimisations are march=corei7 , mtune=core-avx-i . Does this mean that :
ReplyDelete1.these builds are using the corei7 (without avx) as the base optimisation. so they wont run on core2 and below.
2. if the kernel sees a newer corei7 (with corei7-avx and core-avx-i) it will use these instruction sets also.
http://www.phoronix.com/scan.php?page=news_item&px=MTA3NjE
[quote]'corei7'
Intel Core i7 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 instruction set support.
`corei7-avx'
Intel Core i7 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AES and PCLMUL instruction set support. [/quote]
[quote]With the forthcoming Intel Ivy Bridge processors there is also the core-avx-i option that includes the Sandy Bridge (corei7-avx) options while also tacking in support for the new Ivy instruction sets: FSGSBASE, RDRND and F16C. [/quote]
also, in the GCC4.7 script, commands to install GCC4.7 are not there. :) plz update that.
also, it should be mentioned that the reader should either download the compiled .deb files OR use the script provided.
Ok, I will update that, thanks for pointing this
Deleteyes they won't run on core2, I can build for core2 and upload it today (today is Sunday :) )
Deletecorei7 instruction set does not support AVX, AES and PCLMUL extensions so I think it will be emulated unless march is set to core-avx-i, not sure how compiler takes it
no need to build for core2 yourself :)
Deletejust point in the article where to make appropriate changes in the commands to build for a specific version.
Eg : bold the part in the commands where the specific switch is used. then mention that "replace the part in bold with the switch of your choice"
Just replace corei7 to core2 when replacing in Makefile and arch specific makefiles
Deletewriting "march=corei7" and "mtune=corei7" is redundant. "march=x" implies" mtune=x" .
ReplyDeleteso "march=x" is sufficient.
http://gcc.gnu.org/onlinedocs/gcc-4.7.1/gcc/i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options
and if march and mtune targets are different, then i think the mtune switch is ignored.
so for building specifically for "Sandy bridge" , use only "march=corei7-avx" and for "ivy bridge processors" use only "march=core-avx-i".
march=cpu-target implies mtune=cpu-target, but if I set march=core2 and mtune=corei7 then compiler will use core2 instructions but optimizations will be for corei7 processors, this is why mtune=generic is given, which means within that architecture it will use the generalized instruction set, say march=core2 optimization will be general and instruction sets used will be of core2
Deleteexcept for cross-building(like building ON core2 FOR corei7), i dont think mtune is needed at all.
Deleteif i have a first gen corei7 processor, why would i need "mtune=core-avx-i" ?
i'd rather use "march=native".
so to reduce complexity , you might want to use only "march=native" for all the builds. this would prohibit cross-building, but is easier. :)
I will build with march=native then and leave mtune param
DeleteI have built kernel with march=native and it seems the kernel is very fast, system booting in less than 7 seconds
Deletei ran the script for the GCC4.7 build and the script after some time. :(
ReplyDeleteit downloaded the files, and definitely did the patch command. after that i think it stopped.
i did not run the script in a terminal so do not know the error.
Can you try from commandline and tell the error you might have got. I guess the script was asking user input and kernelconfig will not run unless we give yes when editconfigs is ran
DeleteHello, I really want to thank mister Sankaran for his blog it has been very informative. I'm compiling using his recommendations. Since I'm compiling from Debian should I have a flavor patch applied to the kernel?
ReplyDeleteThere are some patches to make the symlinks work properly when installing debs, I am not sure which one, other than that applying patch is not necessary.
DeleteEspecially since it is debian, a kernel without patch will be great, both in their purest forms :)
1. during the "run editconfig" phase, what does changing the "processor type" and the "timer frequency" do?
ReplyDelete2. Are you sure that the build uses GCC4.7 ? i was building today, and ran out of disc space. The console showed error in GCC4.6 folder. can you check ?
3.how to clean the system ? i tried 4 builds and ran out of space on my system. i deleted the folders where i downloaded and built the kernel. but i think lots of files are still present in some other system folders. any way to delete them?
I will check if it is using gcc4.7, regarding disk space can you remove -pipe from Makefile and try
Deletecheck temp folder for other files
I changed gcc-4.7 to gIIcc-4.7 in Makefile and started building, if this variable is not honored it would not have shown error, but it showed error and stopped building which means the value we change in Makefile are taken
DeleteAnyhow to be completely sure, we can do the following
After installing gcc-4.7 and g++-4.7, change gcc/g++ symbolic link to point to new gcc-4.7/g++-4.7
sudo rm -rf /usr/bin/gcc
sudo rm -rf /usr/bin/g++
sudo ln -s /usr/bin/gcc-4.7 /usr/bin/gcc
sudo ln -s /usr/bin/g++-4.7 /usr/bin/g++
the first two commands work. the last two commands give an error : "command not found".
Deletebut the first two commands did change the GCC version. when i type gcc --version, it i see "gcc (Ubuntu/Linaro 4.7.0-7ubuntu3) 4.7.0" .
so what is your next project now ?
ReplyDeleteI was planning to build KDE from source, but donno
DeleteI am a total newbie at this.
ReplyDeleteI managed to follow upto the edit makefile. Couldn't figure out where to change the processor arch to core i7
I m running Ubuntu 12.04 LTS. kernel 3.2.0.26-generic.
also i accidentally said yes to some other config flavor(the last one after making cpu n frequency changes) but didnt save any changes.should this be a problem?
Actually processor arch is changed in Makefile
Deleteshould not be a problem, since we build only the flavor we want, any other changes though done will not affect unless we build that flavor
Also tell me, did you change kernel config (that blue colored screen :) )?
i did only the cpu (core 2/newer xeon) and 1000 Hz frequency change (blue and grey screen)
Deletenothing else outside the terminal
Do you mean to say that after doing changes in Abi, i can continue to build the kernel without any manual changes to the Makefile?
yeah, you can it will be optimized to core2 (not corei7) then
Deletei want it for core i5.
ReplyDeletebut i m not able to locate where in the makefile should I make the change.
Stuck up here
"You can change makefile manually to update the processor arch to corei7 (corei7 is target instructions for i3, i5 and i7 intel processors)"
Just follow Tweak Makefile section in this article
Deletethose sed instructions when run on command will alter the makefile
Deletei see that you have updated the blog with the 3.4.6 build :)
ReplyDeletenow it time for a 3.5 build!
maybe you can add instructions to add the -ck patches ?
Will do tonight, coming back to home. ..
Deleteor maybe wait till the 3.6 becomes stable ?
ReplyDeleteOn the kernel.org site, the stable version is still "3.4.6".
have you tried the -ck patches ? (that have the BFS-Brain Fuck Scheduler) it is designed to keep the desktop in low latency during heavy activity (heavy IO or heavy CPU, dont know).
Not sure, :), just came home, already sleepy
DeleteMaybe liquorix kernel already has ck patches and BFS scheduler
Deleteneed a little help with the maintenance
ReplyDelete3.4.4-030404-i7 is what my kernel version is($uname -r)
however the default(shipped) update manager with 12.04 LTS says
Installed version: 3.2.0.26.28
Available version: 3.2.0.27.29
how do I make my kernel recognized to the update manager?
This requires the packages to be from repository, there are two ways to do this
Delete1. Local repository (easy, refer linux mint)
2. Create a Ubuntu PPA (Personal Packaging Archive)
Hi
ReplyDeleteRecently I updated the BIOS (which is supposed to enhance thermal control) and I installed ubuntu 12.04 fresh and then the first things I installed on it were two things: the fglrx 12.6 patched to be compatible with kernel 3.4 and this costum kernel for the i7 (I have an 1.6 GHz Intel Core i7-720QM Processor and I used the files compiled by you from the links at the bottom of the page).
Before all these updates, my computer did get really hot but it had never reached the 100ºC nor had it shutdown "to prevent overheating". Now it is often to urgent shutdown and reach these temperature, namely when I'm watching movies, even youtube videos; I think it has something to do with the fullscreen mode.
Is it possible that this is caused by this costum kernel? BIOS? fglrx?
is there something I can change on the compilation of the kernel to prevent this from happening?
btw, what does this costumization do in reality? what does it feature?
Cheers,
Pedro Lacerda
Sorry to hear your processor is reaching such big temperature zones,
DeleteCould you change the kernel frequency to 100 HZ and try instead of 1000 HZ
Also check if acpi cpufreq module is running
To check if your processor is running in lower frequency
run and check what frequency your processors are running
cat /proc/cpufreq
To manually add cpufrequency modules we can do the following
sudo modprobe acpi_cpufreq
sudo modprobe cpufreq_ondemand
I am building kernel 3.5.2 with ubuntu patches and 300 HZ frequency with gcc 4.6.3, will upload once the build is completed and update the links, which you can give a try
DeleteWell, I've been using the costum kernel 3.5.2 and I think it got better. But I'll be keeping an eye on it to see if the problem is solved.
DeleteThanks!
Oh, good to hear the kernel performs well, thanks to kernel devs who should have added 1000s of fixes
DeleteUpdated with kernel 3.5.2 build optimized for i7 with 300 HZ kernel frequency
ReplyDeletehttp://www.phoronix.com/scan.php?page=news_item&px=MTE2MzY
ReplyDeleteinteresting article. Link-time optimization for the entire Kernel.
Any plan on integrating this in the next build ?
Wow, what an interesting link, hope Fedora will lead as usual, :)
Deletehello,
ReplyDeleteI'm a bit confused,
Load alternate config and choose stableconfig which is untouched by editconfigs, save alternate config and save .config after changing processor type and kernel frequency
are you stating to save two config files? one .config and the other stableconfig???
if so are you telling me to change the processor and kernel frequency in both?
also I noted while reading your blog that fglrx 12.6 patched to be compatible with kernel 3.4..???
I didn't patch fglrx on previous attempts (several different howtos) they didn't boot to x.
you are loading a stableconfig, which in earlier step we copied from ubuntu lts kernel config via cp /boot/config-`uname -r` stableconfig
DeleteAfter loading this stableconfig, we are making changes and saving it into .config, just .config while saving
Editconfig assumes whatever changes we make are in .config and will parse .config, so we are saving in .config
additional note: I get an error when installing virtualbox once I install the 3.52 kernel
ReplyDeleteno suitable module found for running kernel.
How did you install virtualbox, because I am having oracle virtualbox running and I am running kernel 3.5.2
DeleteHi Sankaran,
ReplyDeleteGreat tutorial, I have myself successful following your steps. Although I have a couple of questions which I would very appreciate if you could help me answering them.
My CPU is an Intel Core i5-2500K and I put "native" on both march and mtune configurations also put Core2/newer Xeon on the processor type just as you told, since I assume it is the most optimize settings if I were to build it just for my own computer, please CMIIW.
Another question is that is there a specific reasoning on why to change the default timer from 250 Hz to 1000 Hz in the kernel configurations? I have read some findings on the Web about the timer configuration but I am not really sure what is the purpose and what is the pros and cons of increasing its value to 1000 Hz. I did find that the timer function is replaced by something called high precision or HPET or something. Could you please share some light here? :)
Thanks in advance, Sankaran!