Slashdot Mirror


ULE Now The Default Scheduler On FreeBSD

Dan writes "FreeBSD's Jeff Roberson says that the ULE scheduler has entered into its probationary period as the default scheduler on FreeBSD. He says that if all goes well, it will remain the default through the rest of FreeBSD 5.* releases. He is requesting you to switch over and test it. The ULE scheduler was designed to address the growing needs of FreeBSD on SMP/SMT platforms and under heavy workloads. It supports CPU affinity and has constant execution time regardless of the number of threads."

19 of 134 comments (clear)

  1. Good news by Zork+the+Almighty · · Score: 4, Funny

    This is great news. The O(1) scheduler in Linux is awesome, and it's good to see FreeBSD keeping up. Now if we just had an O(1) way to squash *BSD trolls, Slashdot would be saved.

    --

    In Soviet America the banks rob you!
    1. Re:Good news by Bobas · · Score: 5, Interesting

      I'm testing this scheduller now (option SCHED_ULE in kernel config) on GNOME desktop. You can really tell the difference, feels much "smoother" and "faster".

      Just my 2c.

    2. Re:Good news by Homology · · Score: 3, Funny
      Now if we just had an O(1) way to squash *BSD trolls, Slashdot would be saved.

      There are fewer *BSD trolls than people inhabiting this planet. Thus there is indeed an O(1) way to squash them, albeith with a high coefficient baked into the O(1).

      However, the weak point of the above argument is the implicit assumption that trolls are people. Well, in a way they are, but they are somehow more like rabbits. And as we all know, a rabbit population is modelled by a Fibonacci serie, that, alas, is not even linear.

      Oh dear, he just disproved his theorem, you think. But no! It all depends how we count trolls. There is no reason to count a troll more than once; we don't say there are four 3's just because "3=2+1=1+2=1+1+1". It's quite simply meaningless. For this reason we have equivalence classes, as I'm sure you all remember from a discrete math course. To count number of trolls is thus reduced to create equivalence classes, and count the number of such classes.

      Looking through some *BSD troll posts, we clearly see that they are highly repetitive and sadly lacking in imagination. This leads us to the conclusion that even though the posts may have been made by different biological entities, the entities are so alike that we may only discern few equivalence classes (caused by excessive inbreeding). Thus there is indeed an O(1) algorithm to kill of the *BSD trolls.

      However, I do propose an O(0) algorithm : Just let them inbreed themselves to extinction.

  2. "a pathological case" by bersl2 · · Score: 4, Interesting
    Quoted from the ULE paper (p.11):
    Figure 6 illustrates a pathological case for the Linux
    scheduler which early versions of ULE fell victim to.
    The setup is 5 nice -5 processes each attempting to use
    25% of the CPU. This over-commits the CPU by 25%,
    which should not be a problem. However, since Linux
    gradually reduces the priority until it hits the minimum,
    the nice value is enough to prevent even normal
    interactive tasks from running with reasonable latency.
    This was solved in ULE by using the interactivity
    scoring algorithm presented above.
    I didn't follow the development of the O(1) scheduler very closely. Has this been looked at since 2.5.56 (the version of Linux they cite)? Is this even true?
  3. Does everyone know about GNU/KFreeBSD? by ciaran_o_riordan · · Score: 4, Interesting

    GNU/KFreeBSD is a project that doesn't get enough press.

    Most GNU systems use Linux as their kernel, but this doesn't have to be the case. The porting of GNU to the FreeBSD kernel is almost complete. (the project name changed from GNU/FreeBSD to GNU/KFreeBSD after a trademark discussion with some FreeBSD folks.)

    FreeBSD people say that their kernel is rock solid, has the best uptimes, most robust networking, and now it's getting an improved scheduler. So it would make sense for GNU users to considering using the FreeBSD kernel instead of Linux.

    Having everyone using the same kernel just makes life easier for worm writers, and corporate attacks such as the SCO fiasco.

    Of course, adoption will be hampered by the marketing mistake of calling the whole OS "Linux", but I hope that choice of kernels will become more normal in the future. It would also help if they came up with a friendlier name than "GNU/KFreeBSD" (8 sylabyls!).

    Anyway, I hope to start using the FreeBSD kernel soon.

    1. Re:Does everyone know about GNU/KFreeBSD? by Anonymous Coward · · Score: 2, Insightful

      uhhhh. why not just use FreeBSD? I mean, seriously, does every piece of software have to have GNU/before it? If you like the kernel so much, why do you assume the rest of the userland must suck? Any GNU tools you specifically need you can install from ports or packages anyway. Projects like this GNU/KFreeBSD are just a waste of developer time to make someones ego feel better. well, whatever.

    2. Re:Does everyone know about GNU/KFreeBSD? by sirket · · Score: 2, Funny

      I have always wanted the software incompatibilities of the FreeBSD kernel with the nightmare that is the Linux userland. This project has answered my prayers!

      Seriously though, why on earth would you use this project? The biggest selling point of FreeBSD is that it is a tightly integrated system. Why would you want to break that up? More importantly, why would you want the more restrictive license included with Debian?

      -sirket

    3. Re:Does everyone know about GNU/KFreeBSD? by Homology · · Score: 5, Informative
      So, the OpenBSD guys are wasting their time rewriting software that already exists in a free form, and you're questioning the benefit of the GNU/KFreeBSD project?

      The point is : They don't see GPL as free enough. And since OpenBSD, like other BSD, is not just a kernel, they have to care about licenses for all program shipped with their OS. Go check OpenBSD Copyright Policy

    4. Re:Does everyone know about GNU/KFreeBSD? by anthonyrcalgary · · Score: 4, Informative

      Well, they actually *do* help keep the GNU toolset portable and clean. Even if they aren't used, using the same stuff on more than one OS exposes problems before they become a remote root exploit.

      Sure I like BSD. Says so in my sig. But if someone else does things right, I'm not going to yell at them.

      Besides, with the GNU toolset on the FreeBSD kernel, you can set up a jail on the FreeBSD side, and then if you want both you can have both. There are differences, it's annoying sometimes, I'm sure some people want both.

      --
      When someone might yell at me, it has to be OpenBSD.
    5. Re:Does everyone know about GNU/KFreeBSD? by scrytch · · Score: 4, Interesting

      Besides, with the GNU toolset on the FreeBSD kernel, you can set up a jail on the FreeBSD side, and then if you want both you can have both. There are differences, it's annoying sometimes, I'm sure some people want both.

      Are you aware that /compat/linux will work just fine in a jail, and that the Linux distribution in there (you get your choice of redhat or debian) runs a rull suite of GNU utilities? And it's all at native speed, not emulated, it's going through the same syscall mapping layer that BSD itself uses.

      I'm all for porting the GNU toolchain to BSD, and so are a lot of other people, which is why it's already been done and is available in ports. Are you seriously talking about porting bloatsome abominations like glibc or something? (Oh wait, /compat/linux again, been done)

      --
      I've finally had it: until slashdot gets article moderation, I am not coming back.
    6. Re:Does everyone know about GNU/KFreeBSD? by phoenix_rizzen · · Score: 3, Informative

      Most of these tools are being removed/replaced from the OpenBSD source tree. Several of these are also being removed/replaced from the FreeBSd source tree. Not sure if there are any projects along these line for NetBSD.

      Check out libtar, the BSD replacement for GNU tar. BSD awk and sed are also in the works, as is a BSD grep.

    7. Re:Does everyone know about GNU/KFreeBSD? by eldacan · · Score: 3, Interesting

      There is one big difference: here you have a Debian operating system running FreeBSD.

      Some people just love Debian, yet may be interested in running a FreeBSD kernel.

    8. Re:Does everyone know about GNU/KFreeBSD? by anthonyrcalgary · · Score: 3, Interesting
      Are you aware that /compat/linux will work just fine in a jail, and that the Linux distribution in there (you get your choice of redhat or debian) runs a rull suite of GNU utilities? And it's all at native speed, not emulated, it's going through the same syscall mapping layer that BSD itself uses.
      a) Going through the compatability layer won't do anything to keep GNU more portable. We're probably headed in the direction of every major OS having a Linux compatability layer... but that's just because Linux programmers don't think portable. That should be discouraged.

      b) Keeping the code portable means no porting is necessary, the makefiles will take care of it. Except for making it fit properly into the ports tree that is, but that's relatively trivial.

      c) Linux code can't use BSD specific stuff like kqueue. Portable code would handle that with ifdef's and so forth.
      --
      When someone might yell at me, it has to be OpenBSD.
    9. Re:Does everyone know about GNU/KFreeBSD? by Brandybuck · · Score: 2, Interesting

      I'm saying that the kernel of FreeBSD might be superior to Linux.

      Did you ever stop to think that perhaps the FreeBSD userland might be superior to GNU's? I'm not talking about comparing individual pieces, but the wholes. Some pieces of GNU are better than BSD, and vice versa.But the *overall* FreeBSD userland might be better than the *overall* GNU userland.

      --
      Don't blame me, I didn't vote for either of them!
  4. Why? by bluGill · · Score: 4, Interesting

    I uise freeBSD everyday, and I have to ask why you would care about GNU/freeBSD. The utilities are essentially equivelent. There is a little more bloat (read features) in some of the GNU stuff. Nothing really significant though.

    Sure it is neat that they can do it. However to say everyone should want to run it? I don't get it.

    1. Re:Why? by CentrX · · Score: 3, Interesting

      Aside from being an experimental exercise, this is a part of the universal notion of Debian. In the future, one will be able to use a Debian system with the Linux and Free-, Net-, or OpenBSD kernels. Thus, Debian will offer a more universal set of options, and by the same processes that produce Linux-based Debian and its quality, stability, and security.

      --

      "The price of freedom is eternal vigilance." - Thomas Jefferson
  5. Re:Sounds like a big improvement by sirket · · Score: 4, Interesting

    1. is the most SMP scalable (parallel)

    Long term or short term? Linux is faster now but the BSD folks always seem to spend a lot more time actually researching the issue.

    2. is the most algorithmically scalable

    I don't even know what this means. Are you referring to the scheduler and other system processes? Linux has an O(1) scheduler - only it ran head first into a brick wall in certain instances. FreeBSD spent a _lot_ of time implenting a robust and stable scheduler and it shows. NetBSD looked at the Linux algorithmns and tied or beat them in every case.

    3. has fastest single threaded performance

    How about which OS is more stable? How about which OS didn't have an idiotic 2TB block device limit for years longer than the BSD's? How about which OS didn't have a 2GB file size limit?

    4. runs on more architectures

    Can you say NetBSD? Besides which, the only computers I own are DEC Alphas and x86 boxes. I could cares less which OS runs on the DreamCast.

    5. supports the most hardware

    How about which one supports the hardware you actually want to run on, and not the toaster in your basement.

    6. has the fastest TCP/IP stack

    For what application? You ask this question as if there is one TCP stack that is fastest in all applications. You also probably prefer a fast stack to a stable one.

    Answers won't be accepted without evidence.

    Questions won't be accepted from AC's. Besides, if you want answers, go look them up yourself.

    -sirket

  6. Re:Sounds like a big improvement by BlowGish · · Score: 3, Informative

    Security updates are still released for older FreeBSD versions, as well as NetBSD versions. Have a look at http://www.netbsd.org/Security/ and you will see that security updates are made for NetBSD 1.5. NetBSD 1.5 was released at the end of 2000, yep, that is over three years ago. It is true that the FreeBSD EOL is shorter, but it is not hard to track a -STABLE branch.

  7. Re:Sounds like a big improvement by Anonymous Coward · · Score: 2, Interesting

    OK you got 1 of 6 correct. You fail.

    Linux and FreeBSD kernels, which
    1. is the most SMP scalable (parallel)

    Linux. (Linux and FreeBSD both started with a BKL about 5 years ago. Linux is now being used on 512 processor machines, FreeBSD doesn't scale past 4 CPUs for all their research).

    2. is the most algorithmically scalable
    Linux

    3. has fastest single threaded performance
    Linux (from the horse's proverbial mouth).

    4. runs on more architectures
    Linux. See here and here (The Linux Kernel supports more architectures than the NetBSD kernel, idiot).

    5. supports the most hardware
    Linux. See here and here (NetBSD is actually the one that prides themselves as running on toasters. And nobody cares about your shitty DEC Alphas. IA64, POWER are where its at now).

    6. has the fastest TCP/IP stack
    Linux

    See you again next year.