SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Long standing faithful Slackware user here. Been running Slackware since v7.0 .
I've just upgraded to Slackware 13 (from 12.0), and am finding it to be great so far - KDE4 included.
Quick question though: Will a custom kernel significantly improve performance? I mean, this is pretty slick. Has kernel performance improved so much that it doesn't really matter any more? I used to be able to tell if I was running a custom kernel or not, but this is performing at least as well as my custom 12.0 setup. So I'm wondering if it's worth the effort?
Is anyone not running a stock kernel? Did you notice a significant improvement in performance?
I'm running custom compiled kernel. Always preferred custom kernel (I like to tweak and customize stuff), but this time I was forced to compile custom one because of bad graphics performance and some additional modifications. Personally, I highly doubt there will be any significant performance improvement, except maybe if you configure your new kernel with some desktop specific optimizations, then maybe some performance improvement would be noticeable in multimedia apps and actions.
If -generic works fine for you and you are happy with current performance, there so need to change it. It is up to you.
Edit:
Btw, if for some reason you decide to compile custom kernel, you should check this out http://www.zen-sources.org/. It seems very interesting. Haven't tried it yet since I'm quite busy these days, but I will definitely .
I got mine to boot in half the time it tacks for a stock kernel and got better multimedia performance
and cut the kernel size by half even with all the drivers built in to the kernel
the newer kernels have a make option that matches the kernel to the hardware it's running on
" i386_defconfig 32bit system or x86_64_defconfig 64bit system " you will still need to run menuconfig
to move things to modules ,add support for usb devices,setup file systems and other non hardware things
slack has gotten alot better but it still isn't at the point where it will not benefit from a custom kernel
After some time mine now have video, sound and wireless. If you know what you want, and have some spare time, go for it. It's working ok for you? Keep in pair with Slackware and you will be very good.
Hardware necessity? Be prepared to spend some days/weeks on readings, buildings and reboots. When the user start the system and the hardware is not recognized, even when the module is built but not loaded, they blame the system.
You can read the trouble spreading when amd's fglrx userbase was forced to change their kernel to build the 'driver'... Thanks to all those who keep tuning the kernel, It lasted only a few ours to me.
It's really all a matter of what you plan to do with your system. If you want, for example, record a midi device in as close to real time as possible or use the JACK audio system, you will need to tweak the kernel for tickless and high resolution timer support. There are also some other things you can do to improve interaction response time at the cost of slowing down background processes.
I personally never upgrade my kernel any more UNLESS the maintainers see fit to up grade. If I need a module for support of something then I compile it separately. But upgrading and tweaking are two different things. Just be sure to add a "Local Version" in the General Setup so that you don't overwrite the files installed with your system. Additionally, it's nice to compile your file system and hard drive modules into the kernel so you don't need the initrd.
the newer kernels have a make option that matches the kernel to the hardware it's running on
" i386_defconfig 32bit system or x86_64_defconfig 64bit system "
I recompile the kernel to remove the generic ata drivers, they are replaced by specific ones which I can identify on my hardware. In the past, copying large files will slow down everything (cpu, mouse cursor etc), now it doesn't.
I recompiled my kernel, without modules, as they are simply unneccessary for me.
The benefits I get from my custom kernel compared to stock, are:
Almost instant boot time, at least far far faster than stock
Native resolution for console using radeonfb driver.
Custom patches for missing functionality
No unneeded drivers, better memory usage and performance
Custom options can be set, finetuned to my specific hardware configuration
Probably many more
I compiled my kernel, my friend taught me how to a year back. After a few unsuccessful tries and panics i finally managed to compile successfully. then i learn't how to optimize it for performance and size. Not to mention its a gr8 learning experience.
the potential benefits that i get:
Faster bootups
better performance with specific cpu support
efficient memory usage
support for specific hardware
etc..
Last edited by slackd; 10-05-2009 at 08:38 AM.
Reason: typo
Long standing faithful Slackware user here. Been running Slackware since v7.0 .
I've just upgraded to Slackware 13 (from 12.0), and am finding it to be great so far - KDE4 included.
Quick question though: Will a custom kernel significantly improve performance? I mean, this is pretty slick. Has kernel performance improved so much that it doesn't really matter any more? I used to be able to tell if I was running a custom kernel or not, but this is performing at least as well as my custom 12.0 setup. So I'm wondering if it's worth the effort?
Is anyone not running a stock kernel? Did you notice a significant improvement in performance?
My opinion (and it's only an opinion): yes, a custom kernel will show a significant improvement (but not something to write home to mom about). I would estimate a minimum of 3% improvement, maximum of 10%.
I would start with generic-smp config, make all your filesystems <*> (unless you need them <M> for LVM2/LUKS), then go and remove anything you don't have and cannot ever install (one main example: if you're on a laptop, make sure your PATA and/or SATA controllers are <*>, and then make all others <M> or disable them: this shaves a lot of space).
Then specify your specific CPU (if it is listed) and disable Generic X86 Extensions. In my opinion, this is the main modification that shows results in terms of response. You can also change Preempt to Voluntary if you're using a desktop or laptop.
Last, if you want, add support for everything you actually have on the machine as <*> (unless you're sure you need it as a module).
I noticed power savings on my slap and slap64 kernel configs, for example, because I tailored everything I could to power savings and laptop type use, as well as to add Timer and I/O Statistics for powertop and iotop. You can look at my slap/slap64 threads on this forum: I listed everything I changed and my reason.
It really depends on how "custom" you want it. I mean you could in theory customize it to only include exactly the drivers that your box needs, but that would take very long.
I can pretty much guarantee that if you recompile the generic kernel or even just add an initrd and leave it as is, it will be faster than the default huge kernel. And if you choose to compile it for your processor and change a few more options you can easily squeeze out a bit more performance at low time cost.
Of course, I'm sure Gentoo geeks will tell you how much faster an uber-customized kernel is (several nanoseconds or so) ... but in general it is a waste of time to attempt such a thing.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.