Announcement

Collapse
No announcement yet.

CONFIG_NO_HZ_FULL Pulled Into Linux 3.10 Kernel

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

  • CONFIG_NO_HZ_FULL Pulled Into Linux 3.10 Kernel

    Phoronix: CONFIG_NO_HZ_FULL Pulled Into Linux 3.10 Kernel

    Support for "full dynticks" has been accepted into the mainline Linux 3.10 kernel...

    http://www.phoronix.com/vr.php?view=MTM2NTM

  • #2
    Three cycles of preparing work and finally a request for a pull containing relatively untested patches.

    So I haven't actually found a real load where any of this makes a noticeable *difference*.
    Quite the risk if you ask me...

    Comment


    • #3
      Originally posted by Rexilion View Post
      Three cycles of preparing work and finally a request for a pull containing relatively untested patches.



      Quite the risk if you ask me...
      Did someone say that you had to configure your kernel using it? What's so dangerous about it? I'm sure all of the 'stable' distros are going to stay away for a couple years anyway.

      Comment


      • #4
        Originally posted by Vash63 View Post
        Did someone say that you had to configure your kernel using it?
        No, did I mention that?

        Originally posted by Vash63 View Post
        What's so dangerous about it?
        Many regressions, few gains.

        Originally posted by Vash63 View Post
        I'm sure all of the 'stable' distros are going to stay away for a couple years anyway.
        Causing less testing coverage since there are now multiple ways to configure a single kernel.

        Just my opinion though.

        Comment


        • #5
          This feature is a major evolutionary step in modern operating system kernel development.

          I am happy to see that the Linux kernel developers embrace new technologies. We don't need a copycat kernel just as well as we don't need a copycat desktop environment. As was said erlier, the common user of the kernel is not affected at all by introducing this new feature until benefits for the general usage will surface and regressions are ruled out.

          Comment


          • #6
            Asynchronous CPU?

            Would this be useful on a clockless asynchronous CPU?

            I wish there were more asynchronous processors on the market, it seems like an interesting idea...

            Comment


            • #7
              Originally posted by Vash63 View Post
              Did someone say that you had to configure your kernel using it? What's so dangerous about it? I'm sure all of the 'stable' distros are going to stay away for a couple years anyway.
              Right so why pull it? Unless it were to replace the old one, or if the developers of it could point out a particular task where this worked well, then this wasn't worth pulling.

              Comment


              • #8
                Originally posted by schmidtbag View Post
                Right so why pull it? Unless it were to replace the old one, or if the developers of it could point out a particular task where this worked well, then this wasn't worth pulling.
                To make it available for testing.

                Comment


                • #9
                  Originally posted by AJenbo View Post
                  To make it available for testing.
                  No...........

                  Comment


                  • #10
                    Originally posted by Rexilion View Post
                    Causing less testing coverage since there are now multiple ways to configure a single kernel.

                    Just my opinion though.
                    Last time I built a kernel, there were thousands of configuration options One more is hardly gonna hurt...

                    Whether or not a particular option is used depends on the distro/target audience. As the article mentions this option is currently experimental (the kernel has always contained a few of those, you'll only see them if you tick "show experimental stuff"). Unless this option offers improvements for the average user, most distros will keep clear anyway. My guess: You'll not see this option in action any time soon, unless you build your own kernel.

                    Originally posted by uid313 View Post
                    Would this be useful on a clockless asynchronous CPU?
                    The kernel's ticks and the CPU's clock rate are not related. A kernel that wakes up periodically potentially uses more power, whether the CPU is synchronous or asynchronous. Also, by "more" you mean "any relevant to the average user at all", right?

                    Comment


                    • #11
                      Originally posted by Wildfire View Post
                      Whether or not a particular option is used depends on the distro/target audience. As the article mentions this option is currently experimental (the kernel has always contained a few of those, you'll only see them if you tick "show experimental stuff"). Unless this option offers improvements for the average user, most distros will keep clear anyway. My guess: You'll not see this option in action any time soon, unless you build your own kernel.
                      The experimental point isn't actually true anymore Wildfire, they recently (month ago?) dropped the "Experimental" tickbox since code would improve but no one would ever go and change what heading it was under in the config, thus leading to everyone having to load "Experimental" features ANYWAY. Now experimental features are mixed in with the usual ones except they are supposed to begin with " *EXPERIMENTAL!* " Until such as time the maintainers feel the code is of sufficient quality to drop said warning.

                      I think, but am not positive, that until the change BTRFS was still mixed in under "Experimental" and yet all distros shipped it as an available option.

                      Comment


                      • #12
                        Originally posted by Ericg View Post
                        The experimental point isn't actually true anymore Wildfire, they recently (month ago?) dropped the "Experimental" tickbox since code would improve but no one would ever go and change what heading it was under in the config, thus leading to everyone having to load "Experimental" features ANYWAY. Now experimental features are mixed in with the usual ones except they are supposed to begin with " *EXPERIMENTAL!* " Until such as time the maintainers feel the code is of sufficient quality to drop said warning.

                        I think, but am not positive, that until the change BTRFS was still mixed in under "Experimental" and yet all distros shipped it as an available option.
                        My main point is that the kernel does and always has contained experimental code. Whether it's hidden by default or not isn't all that important, as long as it's clearly marked as such (that is, unless people forget to add/remove the tag).

                        Also, there's a small difference between this option and BTRFS. Enabling BTRFS in the kernel just means the kernel supports it, but you're not automatically using it. When the kernel is modular it's not even loaded unless you're using a file system with BTRFS. To do so you'll have to explicitly select BTRFS during installation, which the average user won't (since they'll just use the default fs and/or partition layout). Thus enabling it doesn't really hurt anyone, but it's beneficial to users who want to try the new fs without having to rebuild the kernel to do so.

                        The same is not true with CONFIG_NO_HZ_FULL since it's an either-or decision. Unless it has some real benefits for the average user I doubt it'll be selected over CONFIG_NO_HZ. If you want to try it out you'll have to rebuild your kernel anyway (or the distro just might offer an alternative kernel).
                        Last edited by Wildfire; 05-06-2013, 04:18 PM.

                        Comment


                        • #13
                          Michael missed this bit, but later in the thread Ingo explained why he thought Linus was willing to buy into the no_hz thing at all

                          I think Linus might have referred to my 'future plans' entry:

                          | Future plans:
                          |
                          | - there's ongoing work to reduce 1Hz to 0Hz, to essentially shut
                          | off the periodic tick altogether when there's a single busy task on a
                          | CPU. We'd first like 1 Hz to be exposed more widely before we go for
                          | the 0 Hz target though.
                          |
                          | - once we reach 0 Hz we can and remove the periodic tick assumption from
                          | nr_running>=2 as well, by essentially interrupting busy tasks only as
                          | frequently as the sched_latency constraints require us to do - once
                          | every 4-40 msecs, depending on nr_running.

                          and indicated that in practice desktop and developer workload will see the
                          full win from reduced HZ only once we implement those two points and
                          extend the scope of dynticks even more and make HZ truly variable
                          regardless of rq->nr_running
                          Linus responded that it was these future plans, not the HPC benchmarks, which he considers utterly useless, that made him decide to support the merge.

                          Comment


                          • #14
                            Originally posted by Rexilion View Post
                            Many regressions, few gains.
                            But we can still choose CONFIG_NO_HZ_IDLE over CONFIG_NO_HZ_FULL, right?
                            Where can I find more information about those regressions?

                            Comment


                            • #15
                              Originally posted by ypnos View Post
                              This feature is a major evolutionary step in modern operating system kernel development.
                              Please explain yourself since your opinion seems to be the polar opposite of Linus's.

                              Comment

                              Working...
                              X