About The Kernel Configuration
The kernel configurations for Debian Lenny on Debian's latest official kernel configurations, with some key modifications by myself. These changes center around architecture-specific optimizations, and pruning out some stuff that doesn't apply in that context. For example, Intel-specific options don't make sense for an AMD Athlon kernel and vise-versa. The timing settings were also changed from the default 250Hz to 1000Hz, and the schedulers set to be aggressively desktop-friendly. This will incur a very slight amount of overhead in the raw amount of potential CPU horsepower, but the payoff is a huge boost in responsiveness when multitasking or placing the system under a heavy CPU workload. This is especially noticeable in games, multimedia, and heavy multitasking environments, so I feel it's well justified for a non-server environment. So fundamentally, the largest differences between the official configs and my own are the CPU-specific optimizations and the scheduler settings. Each respective kernel was also compiled with the highest known-safe CPU optimizations relative to each architecture.
About The Various CPU ArchitecturesCompiling Other Things With CPU Optimizations
- atom -- Best for the Intel ATOM CPU family.
- centrino -- Built specifically for the "Pentium M" processor, which is essentially a modernized P3. Use this if you have a Pentium M, Centrino, or Celeron-M that's based on a pre-P4 architecture.
- core2 -- Newer Intel multi-core CPUs, including quad-cores, i7's and recent Xeons.
- k7 -- Any AMD Athlon, Duron, or 32-bit Sempron CPUs.
- k8 -- AMD64, 64FX, 64-bit-capable Sempron, Turion or Opteron CPUs.
- p3 -- Optimized for Katmai, Coppermine, Coppermine-T and Tualatin Pentium 3 processors.
- p4 -- Any Pentium 4 or P4-based Celeron CPUs. Optimizations for newer P4s such as the Prescott are also included, but not required for this kernel to work on your system.
- phenom -- Later AMD K10-based CPUs, such as Deneb, Heka, Agena, and Toliman.
- prescott -- Built specifically for Prescott or later Pentium4 CPU's before the Core2, such as the Pentium-D.
- x2 – Early multi-core AMD processors such as Manchester, Toledo, Windsor, Brisbane, and Kuma.
Now that you've got a shiny new kernel that's been built to take advantage of your CPU's advanced features, you may as well build anything else you build from day to day (video drivers, games, whatever) using those same optimizations. This will give a noticeable boost in speed and responsiveness in some packages, and at worst doesn't hurt performance in others. In 32-bit x86 builds of Debian (or derivatives such as Sidux), you can accomplish this by adding the following lines to your /etc/environment file:
Note that on Pentium1-class CPUs (including the AMD K6 family), you will need to use "i586-pc-linux-gnu" for your CHOST value. Also note that with GCC version 4.1 or higher, using the "-march=native" option will cause GCC to detect your CPU's capabilities at runtime and automatically choose the best optimizations available. If you're using an earlier distro than Lenny, make sure you have GCC 4.1 or newer before using the native flag. Otherwise, you will have to specify your CFLAGS and CXXFLAGS manually based on your CPU hardware. If you have an earlier version of GCC and want to build with optimizations, check out Gentoo's list of safe CFLAGS: Safe Cflags - Gentoo Linux WikiCode:CHOST="i686-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer" CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"






Reply With Quote






Already Made My Decision

Bookmarks