Announcement

Collapse
No announcement yet.

Features You Won't Find In The Linux 3.9 Kernel

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

  • #16
    Originally posted by BO$$ View Post
    The needs aren't the same. Server and desktop have different latency needs. So it's normal that there could be a need for a specific scheduler depending on the situation.
    If you need the BFS scheduler then you will use it, otherwise it's better to stick with a sane default. Hacky switches based purely on core count aren't a good idea because the scalability could vary from version to version, and would require updating that switch all the time.

    Comment


    • #17
      Originally posted by BO$$ View Post
      Can't they put something like a flag that determines whether a memory slice is swappable or not? And put my mouse and my music in that part of memory that cannot leave the main memory and reside on the HDD?
      Supported since 2.4 kernel (mlockall), but only doable by root.

      Why not default X and your music to that then (beyond having to run the music player as root)? What if the comp is in DPMS sleep/screensaver and tries to do some processing? Sure you'd let X get swapped then.

      Comment


      • #18
        found again

        Originally posted by ulenrich View Post
        Con Kolivas has some ideas to make the scheduler scalable by automaticly trickling down queues. But he has no time. No one is sponsering him ....
        I found the place CK wrote about it some time ago.
        Perhaps there is another expert taking this idea? Because the Linux scheduler is broken! What would you say for example about a security concept providing security for only 90 percent of the users?
        https://lkml.org/lkml/2012/12/20/509
        However the main reason for developing the upgradeable rwlocks was not just to
        create more critical sections that other CPUs can have read access. Ultimately
        I had a pipe dream that it could be used to create multiple runqueues as you
        have done in your patch. However, what I didn't want to do was to create a
        multi runqueue design that then needed a load balancer as that took away one
        of the advantages of BFS needing no balancer and keeping latency as low as
        possible.

        I've not ever put a post up about what my solution was to this problem because
        the logistics of actually creating it, and the work required kept putting me
        off since it would require many hours, and I really hate to push vapourware.
        Code speaks louder than rhetoric. However since you are headed down creating
        multi runqueue code, perhaps you might want to consider it.

        What I had in mind was to create varying numbers of runqueues in a
        hierarchical fashion. Whenever possible, the global runqueue could be grabbed
        in order to find the best possible task to schedule on that CPU from the entire
        pool. If there was contention however on the global runqueue, it could step
        down in the hierarchy and just grab a runqueue effective for a numa node and
        schedule the best task from that. If there was contention on that it could
        step down and schedule the best task from a physical package, and then shared
        cache, then shared threads, and if all that failed only would it just grab a
        local CPU runqueue. The reason for doing this is it would create a load
        balancer by sheer virtue of the locking mechanism itself rather than there
        actually being a load balancer at all, thereby benefiting from the BFS approach
        in terms of minimising latency, finding the best global task, not requiring a
        load balancer, and at the same time benefit from having multiple runqueues to
        avoid lock contention - and in fact use that lock contention as a means to an
        endpoint.

        Alas to implement it myself I'd have to be employed full time for months
        working on just this to get it working...
        Last edited by ulenrich; 03-11-2013, 10:03 AM.

        Comment


        • #19
          Originally posted by BO$$ View Post
          So basically we're stuck with CFS which is inferior to whatever Windows is using and produces worse behavior and then wonder why linux cannot take on Windows?
          Imagine Windows on 4096 CPUs.

          Comment


          • #20
            Originally posted by BO$$ View Post
            Can't they put something like a flag that determines whether a memory slice is swappable or not? And put my mouse and my music in that part of memory that cannot leave the main memory and reside on the HDD?
            It looks like someone wrote an xorg extension to do this:

            https://github.com/stiletto/angrymlocker

            Comment


            • #21
              Originally posted by BO$$ View Post
              Shouldn't this be done automatically? I don't know but in windows it just works. In linux where everybody bolsters how it's design is superior to anything those losers at microsoft do I can't get a damn smooth mouse cursor. And copying a file kills my music. Do you want everybody that uses Ubuntu to have to understand mlockall and run music players with root just to have smooth mouse cursor? No wonder Windows has 90% and linux around 1%.
              It probably should, complain to your distro.

              FWIW I have the opposite experience - I often see GUI lag in Windows when working with slow network shares or usb sticks, but IO doesn't affect X here. I did use to get a small skip in music during heavy IO (git gc of a big tree), but upping mplayer cache settings fixed that.

              Comment


              • #22
                Originally posted by BO$$ View Post
                I don't run 4096 cpus. Neither do most desktops. What you say is a cop-out: Linux is great but on servers with 4096 CPUs. Linux should work on both servers and desktops. Or else it's no better than windows.
                Linux still performs better on desktop than Windows does on server.
                Linux is still probably the most flexible OS.

                Comment


                • #23
                  That sounds very much like a typical PulseAudio installation... Just get rid of it. It is bloatware crap. I run on nothing more than ALSA, and I can put the cpu under intense load and never get any audio lag or skips.

                  Comment


                  • #24
                    Originally posted by BO$$ View Post
                    Choppiness in music happens along with mouse choppiness. I don't think that the culprit is PulseAudio.
                    Have you tried? I wouldn't be so quick to dismiss it. The first thing however that I would look at is what the hell is going on in your system that you are hitting the swap that hard in the first place. (BTW, I can easily reproduce the same set of conditions in Windows that you describe when a program goes rogue and springs a nasty memory leak. When that happens, you move the mouse and system starts sputtering all over).

                    Comment


                    • #25
                      Hold on, if you know you are hitting memory limitations, why are you choosing some of the most bloated software that you can choose? PA, KDE, Cromium, Eclipse... I mean come on, in every case there is something lighter that would work better on your hardware.

                      EDIT: and if you are only using 1GB of ram and still have 2GB available, and it is already swapping, then something is configured wrong... You should check out swappiness.
                      Last edited by duby229; 03-12-2013, 02:48 AM.

                      Comment


                      • #26
                        Originally posted by BO$$ View Post
                        So what? I still get choppy mouse movement under heavy load and can't play music continuously.
                        I recall having quite noticeable GUI lag when copying large files (~10gb and bigger) which prompted me to try out BFS and BFQ quite a while back and it did indeed improve gui responsiveness greatly. However as time went I stopped using a BFS patched kernel as the gui lag improved alot in mainline and these days it seldom happens (actually I can't recall when it did last).

                        Never had any sound playing lag when copying files though, also this gui lag has always been IO bound, I've never encountered it despite maximizing the cpu cores (like running x264 encodes while compiling etc). I wouldn't be surprised if BFS/BFQ still gave noticeably better responsiveness during extreme IO load but it's running smooth enough here for me not to bother.

                        For the record I haven't used swap on my machines for many years so there may be problems with excessive swap access that I'm not aware of.

                        Comment


                        • #27
                          running linux with amd anything = that's your problem son


                          here I'd say overall performance is 70-80% of windows performance (I blame it worse intel drivers) but everything runs great.


                          fans tend to kick in a lil more than in win 2

                          Comment

                          Working...
                          X