Announcement

Collapse
No announcement yet.

Autonomously Generating An Ideal Kernel Configuration

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    It's worth mentioning Pappy's kernel seeds:

    http://www.kernel-seeds.org/

    http://forums.gentoo.org/viewtopic-t...c-start-0.html

    This is the best resource around users looking for some mostly reliable information on kernel configuration, along with config files with sane defaults. Much thanks to him for his efforts.

    As far as the idea of building a kernel based upon a benchmark - this sounds like a bad idea. Most kernel options aren't exactly "tunables" that you select in the interest of performance. You mostly enable support for the the features you need and the hardware you have. A benchmark isn't going to indicate that.

    Comment


    • #17
      Originally posted by FireBurn View Post
      Would it be possible to create a utility that looks at the output of lspci and lsusb and creates a simple cut down kernel config with only the bare minimum required switched on?
      I think I saw something that did that. It would look at the running modules rather than at the output of lspci, but I can't remember what, where or how (perhaps I'm imagining it). To quickly find the device drivers from the device ids you could use http://kmuto.jp/debian/hcl/

      Comment


      • #18
        Originally posted by FunkyRider View Post
        Yeah it might sounds useful but to me a fulling working distro with vanilla kernel and doing what it is supposed to do, with no crashing and no major usability issues is what I really want, unfortunately non of current distros does that.
        Same, really. I do compile my own kernels too. But that's mostly because I pull from the development git trees. Otherwise I wouldn't really bother, Fedora has new enough kernels. :3

        Comment


        • #19
          Originally posted by V!NCENT View Post
          Nice... xD
          This is not necessarily true.
          I run Gentoo on my main machine since 2006.
          and various binary distros on HTPC, laptops and of course two computers at my parents home.
          I had enough problems from each to say that Gentoo saves time in long run for me.
          All various incompatibility issues and wait 6 month or more to the next distro release or compile it yourself or use broken PPA (comunity for SuSe and whatever) caused me to spend much more time to maintain those Ubuntu/OpenSuse. Even Sabayon almost in the black list.
          So if you want the latest and greatest and don't want to reinstall your OS, I found Gentoo the most flexible, customizable and faster OS.
          And compilation time isn't issue anymore. They are short enough on my two years old C2Q + 8GB RAM. Mostly they comparable to binary installation.

          Back to the topic. My .config probably started on 2.4.x
          it is reviewed and updated when:
          • New hardware installed
          • New kernel released with relevant (to my system) changes

          I just like to keep it as small and simple as possible.
          But this might help to find how to make it even faster
          Thanks Michael, you are doing great job. I hope that it will reach the point where it can be used for "real life" benchmarks and not only compare the results with other machines.
          Like the HD playback. It meaningless with current files and you can not conclude if some system will or will not be able to playback blue ray movie based on this tests.

          Comment


          • #20
            Same findings here. I can setup a full Gentoo desktop in a quarter the time it takes to beat Ubuntu into installing the required developer libraries. It is seriously a pain. And don't say apt-get build-dependencies, since that still doesn't install half the stuff I use.

            Gentoo is not for those that want the latest and greatest, it is for those that want a continuously upgrading system, where I can choose to have a small part run the latest & greatest. E.g. only when you NEED a bleeding edge version of PERL, for some new feature, you then mark PERL as "run at latest unstable" and the rest of your system is perfectly stable.

            I don't really care about the performance, but I don't want to waste a week getting my notebook's audio working again after upgrading from Ubuntu 9.04 to 9.10 (like half my office did) (And do that twice a year would drive me round the bend)

            Although, I install Ubuntu for my parents system, since they don't really demand much of it, and I think they appreciate the extra polish :-)

            Comment


            • #21
              Automating kernel configuration makes sense if it is done right and not just based on benchmarks. Would make sense if the generator program would take into account mainly the hardware present as well as architecture-specific tweaks plus any user specified settings

              Comment


              • #22
                and i really forgot to mention multislot/multilib.
                You can have two (or more) versions of same thing installed and working.
                There are almost always more than one version available by default (and more in overlays).

                Comment


                • #23
                  Originally posted by Michael View Post
                  I'm sure I could come up with something to make it work like that to optimize it even further in terms of what modules are needed based upon the current hardware, but I probably wouldn't end up investing that much time into this module unless it becomes financed by a PTS Commercial client.
                  If you didn't make modules but instead built in it would be easier to build and test, plus the kernels (which are around 2MB each) could be kept and reused for further tests without recompiling them

                  Comment


                  • #24
                    Will this module work only on Ubuntu or will it be compatible with all the Debian based systems?

                    Comment


                    • #25
                      Originally posted by SkyHiRider View Post
                      Will this module work only on Ubuntu or will it be compatible with all the Debian based systems?
                      It may work on other Debian systems too, but I am only concerning myself with testing it on Ubuntu unless a PTS Commercial customer requests otherwise.
                      Michael Larabel
                      http://www.michaellarabel.com/

                      Comment


                      • #26
                        Originally posted by Smorg View Post
                        It's worth mentioning Pappy's kernel seeds:

                        http://www.kernel-seeds.org/

                        http://forums.gentoo.org/viewtopic-t...c-start-0.html

                        This is the best resource around users looking for some mostly reliable information on kernel configuration, along with config files with sane defaults. Much thanks to him for his efforts.

                        As far as the idea of building a kernel based upon a benchmark - this sounds like a bad idea. Most kernel options aren't exactly "tunables" that you select in the interest of performance. You mostly enable support for the the features you need and the hardware you have. A benchmark isn't going to indicate that.
                        Some of the stuff he has turned on by default can be turned off, but I stopped making my .config files from the default settings and started using his as a basis. It is nice to have most of the junk I do not need turned off by default.

                        Comment


                        • #27
                          Originally posted by Shining Arcanine View Post
                          Gentoo Linux users have been by modifying .config file settings by hand to get improved kernel performance for a long time. I do not think automating it will do much for Linux performance, although this will probably save time for Linux users that were already doing this sort of thing.
                          Gentoo users are the best!!11! Nobody is performancyer! Also, Gentoo users are *not* presumptuous and ignorant! That is because Gentoo invented the source-based distro and even if there were others, Gentoo would have the best implementation, not only the best publicity! And binary distros can never be as efficient anyway. Because compilation is done in the background anyway so it uses no CPU, no memory and doesn't kill the climate!!!!!!

                          Comment


                          • #28
                            Originally posted by n0nsense View Post
                            Even Sabayon almost in the black list.
                            Wasn't Sabayon pre-assembled Gentoo?

                            Comment


                            • #29
                              genetic algorithms

                              For combinatorial problems like this with a large search space (which is likely if you want to optimize a decent number of parameters), people have successfully applied techniques like genetic algorithms (http://en.wikipedia.org/wiki/Genetic_algorithm).

                              Of course, you may not find the globally optimal solution that brute-force can. However, you'll get closer in what is hopefully far less time.

                              ACOVEA takes such an approach to optimize compiler flags with GCC.

                              Comment


                              • #30
                                Originally posted by not.sure View Post
                                That's what I was thinking of when I read the headline. That would actually be quite interesting, and would serve both kernel performance and security.
                                This is what "make localmodconfig" does I think.



                                Maybe you would like to include GCC switches, and chrt scheduling type and nice value, pr. thread, for minimal jitter, in openGL applications aswell.

                                Peace Be With You.

                                Comment

                                Working...
                                X