Slashdot Mirror


Anticipatory Scheduler in Kernel 2.5+ Benchmarked

gmuslera points to this article at KernelTrap comparing available benchmarks for schedulers available for the 2.5 kernel, with the 2.4's scheduler as a reference poin. "In some cases, the new Anticipatory Scheduler performs several times better than the others, doing a task in a few seconds instead minutes like the others."

252 comments

  1. Anticipatory by daeley · · Score: 4, Funny

    Somehow, I just *knew* this was coming. ;)

    --
    I watched C-beams glitter in the dark near the Tannhauser gate.
    1. Re:Anticipatory by nairnr · · Score: 4, Funny

      Just like they couldn't anticipate the Slashdotting they were about to receive...

    2. Re:Anticipatory by mindriot · · Score: 2, Funny

      Man, they should've just anticipated the coming Slashdotting and used it as a real-life benchmark for the scheduler...

    3. Re:Anticipatory by ottffssent · · Score: 2, Funny

      > Mac OS X: because making Unix user-friendly is easier than debugging Windows.

      Heh. More like "because making user-friendly Unix is easier than making unix-sturdy MacOS".

    4. Re:Anticipatory by bstadil · · Score: 1
      Somehow, I just *knew* this was coming. ;)

      Easy Bro, I just patched and recompiled my kernel in preparation for a recursive stunt using this technology.

      2.6 will be released April 1, at 10.32 CST.

      --
      Help fight continental drift.
    5. Re:Anticipatory by gilgongo · · Score: 1, Troll

      Hey way OT, but what the hell...

      I totally agree, but do find it sad that Apple spent all the time and effort only to find that creating an OS was beyond them, so they chucked it all out and went for Unix. And Unix had been there for them all along.

      Ah well, a good lesson learned. Now if only somebody could work out how to teach Microsoft a similar one...

      --
      "And the meaning of words; when they cease to function; when will it start worrying you?"
    6. Re:Anticipatory by Anonymous Coward · · Score: 2, Funny

      Somehow, I just *knew* this was coming. ;)

      Ah, grasshopper, but did you know it will be coming to Slashdot yet again in a day or so? Anyone can predict the future; it takes a sage to predict a Slashdot duplicate.

    7. Re:Anticipatory by bill_mcgonigle · · Score: 5, Funny

      I totally agree, but do find it sad that Apple spent all the time and effort only to find that creating an OS was beyond them, so they chucked it all out and went for Unix. And Unix had been there for them all along.

      C'mon, try grounding your trolling in reality next time. Scheduling on OSX is handled by Mach, which was developed at CMU by Avi Tevanian, developed at NeXT and brought up to 3.0 at Apple.

      Apple uses BSD for its UNIX compatibilty layer, but that doesn't handle scheduling, which is what this article is about.

      Now, if you want to say Apple was dumb for chucking A/UX in the early nineties, then that'd make a much better troll.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    8. Re:Anticipatory by Anonymous Coward · · Score: 0

      Anyone can predict the future; it takes a sage to predict a Slashdot duplicate.

      Naw, just say every article is going to be duped in the future, and you are only wrong 75% of the time :) 1/4 right is still better than astrology.

  2. Great! by kpansky · · Score: 1, Offtopic

    Now if only I could get 2.5 series to not b0rk when booting off my CMD649 ide controller...

    --

    --Kevin
    1. Re:Great! by MBCook · · Score: 1
      Do the kernel developers know about this? This is exactly the kind of bug that they always want to get rid of.

      On a side note I've been running 2.5s for about 3 months now and I've definatly noticed improvements in response time and such. It's a great kernel.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    2. Re:Great! by Xunker · · Score: 5, Funny

      Quoeth the driver:

      * These chips are basically fucked by design, and getting this driver
      * to work on every motherboard design that uses this screwed chip seems
      * bloody well impossible. However, we're still trying.

      --
      Hilary Rosen's speech was about her love of money and her desire to roll around naked in a pile of money.
    3. Re:Great! by Paslophunk · · Score: 2, Interesting

      I second that (albeit only 2 months). I used to have many problems compiling 2.5, but the newer releases are truly wonderful, also the new module system kick ass, esp. now when I can compile ALSA in and not worry about a thing. 2.5 is WAY easier to get up and running than 2.4, I really recommend trying it out, but be sure to read Documentation/Changes ! (although I run Debian/Woody and didn't bother to upgrade anything except module-init-tools, works for me ;)

      Oh, and while ur at it u might want to take a look at devfs too (I run it without devfsd and I didn't have any problems, u just need to change inittab from ttyX to vc/X, fstab and lilo/grub).

      The only kinks I had was with xine which doesn't like v4l, but mplayer works fine... Hmm, oh and same FPS for Q3, I doubt that any of u will feel much difference anywhere (unless u didn't use the preempt patch for 2.4). But I haven't played with NPTL yet, does anybody have any experience with that?

      --
      what goes up must come down, ask any sysop / sig11
    4. Re:Great! by DeeKayWon · · Score: 4, Informative

      The snippet you quote is from the cmd640 driver, which covers only the chipset by the same name. Subsequent CMD chips, including the 649, use the cmd64x driver and are not fucked.

    5. Re:Great! by Anonymous Coward · · Score: 0

      They are fucked. What part of "fuck" don't you understand?

    6. Re:Great! by CoolVibe · · Score: 3, Interesting
      I'd love to try 2.5, but the closed nvidia drivers is the only thing that's keeping me grounded to 2.4.

      Although I _suspect_ they will run fine on 2.5, I don't want to risk it. It's still a little too bleeding edge for me. They call it bleeding edge for a reason, because you _will_ bleed and get hurt from time to time.

      I guess I am a big fat ninny when it comes to bleeding edge stuff (although I do lust for all the new toys, the waiting just increases my contentness when such cool stuff gets part of stable stuff) :-)

      Speaking of avoiding the bleeding edge, it would be sooo cool if this IO scheduler was backported to 2.4.

    7. Re:Great! by wasteve · · Score: 1

      I found this site a little while ago. I don't run 2.5 myself but I have used the patch that fixes the OOPS from version 3123 of the NVIDIA drivers.

    8. Re:Great! by Anonymous Coward · · Score: 0

      Well, the vowel seems a little shaky, as if decapitated. Then there is the 'ck' sequence. Is that redundant? Couldn't we just go with 'fuq', 'fuc', or 'fuk'?
      Truly, this is the most entertaining /. thread I've seen in a while.
      Alas, duplication does not improve these threads...

    9. Re:Great! by pjrc · · Score: 1

      It's also worth noting that the cmd640 chipset was used on late 486 and early pentium motherboards. Few, if any, new computers have used this buggy chip since the mid 90's.

    10. Re:Great! by Anonymous Coward · · Score: 0

      Did you know it's possible to setup your system 2 boot 2 different kernels?

    11. Re:Great! by The+J+Kid · · Score: 1

      You are in Luck !

      Clicketh for the NVidia drivers for Linux 2.5

      --
      Moderation: +4. Modded 70% Funny and 30% Overrated. 100% Saturated.
    12. Re:Great! by CoolVibe · · Score: 1
      Both posters that came with the minion.de link: Thanks! It's bookmarked.

      Heck, I might give 2.5 a shot this week. Woohoo.

    13. Re:Great! by CoolVibe · · Score: 1
      That's not really the issue, since the IDE subsystem is still a bit wonky (why else did they port the 2.4 IDE system to 2.5?), and well, there _was_ the nvidia driver issue.

      Bleeding edge usually means you bleed from time to time. I don't like bleeding. I bled when I did follow FreeBSD 5, when they put in KSE, and I bled when they took out perl all of a sudden (not that I disagree with that move, it did force me to reinstall all my perl modules, so I bled.. again), and when they moved to gcc 3 (lots of stuff broke, mainly ports).

      Sure I can run multiple (devel) kernels on a box, but I want to be able to work too, and not bleed :)

    14. Re:Great! by Xunker · · Score: 1

      Ack! Ack! Ack! The Extended IDE controller I use in this very machine is based on that very chip! "CompUSA Brand" indeed!

      --
      Hilary Rosen's speech was about her love of money and her desire to roll around naked in a pile of money.
  3. Ohh the agony... by Sayten241 · · Score: 4, Funny

    The anticipation is killing me .

  4. Obvious joke... by ChangeOnInstall · · Score: 4, Funny

    If only kerneltrap.org were running the new schedu... oh, never mind.

    --
    What has *science* done?!? -- Dr. Weird (ATHF)
  5. Oops by AnotherShep · · Score: 3, Funny

    Seems to be slashdotted already... Wonder if it saw that coming.

  6. unfotunately by DonkeyJimmy · · Score: 5, Funny

    In some cases, the new Anticipatory Scheduler performs several times better than the others, doing a task in a few seconds instead minutes like the others.

    The task in question was anticipating things, so the test might not be all that fair.

    --
    "Probably the toughest time in anyone's life is when you have to murder a loved one because they're the devil." -Philips
    1. Re:unfotunately by Caoch93 · · Score: 1
      The task in question was anticipating things, so the test might not be all that fair.

      While I have seen some voices of dissent that the test isn't fair, I'm afriad I don't understand what you mean here. Could you please explain further?

    2. Re:unfotunately by DonkeyJimmy · · Score: 2, Funny

      While I have seen some voices of dissent that the test isn't fair, I'm afriad I don't understand what you mean here. Could you please explain further?

      Actually I was making a joke (that the benchmarking task itself was what the act of anticipating things, which this tool would obviously have a one up on... ). But someone modded me up insightful, so maybe I'm on to something.

      It'd be like testing rice painted white in a glass of milk during a snowstorm in a whiteness contest.

      --
      "Probably the toughest time in anyone's life is when you have to murder a loved one because they're the devil." -Philips
    3. Re:unfotunately by Anonymous Coward · · Score: 0

      This is why I run Linux. Projects like the Anticipatory Scheduler demonstrate time and time again that Linux is the best, bar none. Furthermore, this technology is available today; it is not some varporware promise.

    4. Re:unfotunately by Caoch93 · · Score: 1
      Actually I was making a joke (that the benchmarking task itself was what the act of anticipating things, which this tool would obviously have a one up on... ). But someone modded me up insightful, so maybe I'm on to something.

      Believe it or not, you are sorta on to things. One of the "competitor" scheduler implementations to the anticipatory scheduler is the CFQ scheduler, which is written with very different intents as far as latency and bandwidth of service go. The CFQ implementor has protested that the benchmarks cast a poor light on the CFQ scheduler because they focus on tasks it isn't designed to optimize for and that the CFQ scheduler is preferable for normal desktop use (whereas the anticipatory scheduler is preferable for server use).

      So, like with most humor, there was a kernel (no pun intended) of truth in there. ;)

  7. I've tried it and it rocks by huhmz · · Score: 5, Interesting

    I have a multithreaded perl app (yes perl has descent thread support in 5.6 and later) which does a lot of mixed write/read I/O to and from a database. With 2.4 and 40 threads I can hardly use the system (of course I dont have to abuse my computer with 80 threads but Im trying to prove a point here).
    Switching to a new tabbed terminal in fluxbox it takes ages to redraw and switching between virtual desktops is an act of futility.
    With 2.5 It get good interactive performance and don't see this effect much at all. For sure this is also a bit due to the new VM code.
    Of course I would probably get the best interactivity with the SFQ scheduler but thats secondary in this case. At least xmms doesn't skip with this during very heavy I/O. I do not use the new NPTL code which would help further I suppose.

    1. Re:I've tried it and it rocks by huhmz · · Score: 1

      Dammit it's supposed to say 80 threads in both cases and yes I did preview but I've been awake for too long. Sorry

    2. Re:I've tried it and it rocks by brer_rabbit · · Score: 3, Funny
      For sure this is also a bit due to the new VM code.

      Fer sure.

    3. Re:I've tried it and it rocks by Anonymous Coward · · Score: 1, Insightful

      I'm sorry to sound like an Trolling AC, but I can't imagine why you would need 80 threads. Unless you using threads instead of a queue. I love threads, but they are and over used and hard to control and debug. The most complex thread system I've needed had ~25 threads running on 5 computers.

    4. Re:I've tried it and it rocks by bill_mcgonigle · · Score: 2, Informative

      I'm sorry to sound like an Trolling AC, but I can't imagine why you would need 80 threads. Unless you using threads instead of a queue. I love threads, but they are and over used and hard to control and debug. The most complex thread system I've needed had ~25 threads running on 5 computers.

      It's far easier to maintain any multiplicity of state machines using threads rather than queues. Think of multi-user servers using stateful protocols. You might have hundreds or thousands of threads.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    5. Re:I've tried it and it rocks by PD · · Score: 2, Funny

      How about a game where each little unit runs its own thread? 400 tanks crawling all over the battlefield would be 400 threads.

    6. Re:I've tried it and it rocks by Anonymous Coward · · Score: 0

      Only one problem - it'd run like a FUCKING DOG.

    7. Re:I've tried it and it rocks by Anonymous Coward · · Score: 0

      why the hell is that funny?

    8. Re:I've tried it and it rocks by afidel · · Score: 1

      How about an application that wishes to scale arbitrarily with the processor resources available (say from a blade server to an IBM Z series machine). With a run time option to limit the number of threads performance testing could be done to find the best number of threads for the workload expected and the hardware available.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    9. Re:I've tried it and it rocks by brer_rabbit · · Score: 1
      why the hell is that funny?

      Honestly, I don't know. It just is.

    10. Re:I've tried it and it rocks by jpmorgan · · Score: 2, Interesting

      Wow, 80 threads to build a state machine? What a nasty solution.

      You should chuck whatever language you're working in and replace it with one that supports full co-routines.

    11. Re:I've tried it and it rocks by Doug+Neal · · Score: 1

      I have noticed that there is a huge latency involved when creating threads in Perl 5.8 - in fact I benchmarked it and it was about 20 times slower than a fork! I think this has something to do with Perl making duplicates of all the variables for each new thread (they aren't shared by default) and possibly not using a copy-on-write algorithm to do so. I don't know. But while the performance of the threads was decent once they got going, the latency to spawn them was really crippling, and I went back to using forks... I wonder if this new scheduler will have any impact on Perl thread performance?

    12. Re:I've tried it and it rocks by Tony-A · · Score: 1

      replace it with one that supports full co-routines. [emphasis added]
      Ok, you got my attention. I've done co-routines in Basic Assembly and seem to recall some in PL/I (Pl/I-F with the PL/I runtime "owned" by some BAL code). Seems like most "modern" languages have zilch support (except for local static variables). Oh can they simplify some very messy logical abilities.

    13. Re:I've tried it and it rocks by greenrd · · Score: 1
      You should chuck whatever language you're working in and replace it with one that supports full co-routines.

      Threads, coroutines - what's the difference?

      Now before you bite my head off, I know they are different. But both require individual stacks, coroutines can be emulated with threads - and threads support higher throughput (one thread can do compute while another is blocking on I/O) than single-threaded coroutine implementations.

    14. Re:I've tried it and it rocks by Anonymous Coward · · Score: 0

      Or how about a game where the threads in the soldiers' clothes are all represented by separate thr... Blah, never mind.

  8. Ketchup scheduler? by Penguin2 · · Score: 3, Funny

    It reminds of the old song and Heinz Ketchup commercial:
    "Anticipation is making me wait"...

    1. Re:Ketchup scheduler? by drfuchs · · Score: 1

      You kids! The song, "Anticipation" was a huge hit by Carly Simon back in 1971 (she won the "Best New Artist" Grammy for the album). Her version showed up in a Heinz commercial years later; a newer recording by her kids(!) was used in a 2002 Heinz commercial. On the other hand, I grew up thinking that the "Lemon Pledge, Very Pretty" song came from the TV commercial, but it's really "Lemon Tree, Very Pretty", a hit for Peter, Paul and Mary in 1962.

  9. Re:Also "poin" instead of "point" -- COME ON SLASH by Anonymous Coward · · Score: 0

    crazy how my brain just filled in the missing letter.

    scary.

    glad you pointed it out...i need to read more carefully.

  10. Poin..... by akiy · · Score: 5, Funny
    "with the 2.4's scheduler as a reference poin."

    I'm still anticipating the "t" in "point" myself...

    --

    --
    http://www.aikiweb.com - AikiWeb Aikido Information

    1. Re:Poin..... by Anonymous Coward · · Score: 0

      poin was actually in the topic, moderator

    2. Re:Poin..... by Anonymous Coward · · Score: 1, Funny

      yea no shit.

      that's definitely +5 MOC

      (moderator on crack)

    3. Re:Poin..... by Mark+(ph'x) · · Score: 5, Funny

      Funny though... on my screen the first thing my brain interpreted that to: 'reference porn'

      I think i need help...

      --
      those who control the past, control the future. those who control the present, control the past.
    4. Re:Poin..... by Mathness · · Score: 1

      No no, this was a clever reference to poin.
      So any true fan af this game would have caught the pun.

      --
      Carbon based humanoid in training.
  11. Article text in case of /. effect: by Mr.+Sketch · · Score: 5, Funny

    Too many connections

  12. doing one task? by stew77 · · Score: 1
    doing a task in a few seconds instead minutes like the others


    A task? I thought schedulers were for multitasking...

  13. /.ed by tarquin_fim_bim · · Score: 0, Troll

    They're not using an IIS server are they? Naughty, naughty.

    1. Re:/.ed by Anonymous Coward · · Score: 0

      No. Red Hat 7.x if I remember correctly.

  14. Anti-slashdotting? by Dark+Lord+Seth · · Score: 5, Funny
    Too many connections

    You know, you can ALMOST feel an admin over there just itching to type in "Fuck you Taco! And your site!" instead of the connection stuff...

    1. Re:Anti-slashdotting? by Eccles · · Score: 1

      Perhaps Apache should be set up so that sites refuse referrals from slashdot.org by default...

      --
      Ooh, a sarcasm detector. Oh, that's a real useful invention.
    2. Re:Anti-slashdotting? by Jahf · · Score: 3, Interesting

      Mozilla's Bugzilla does this now.

      Perhaps one better ... redirect all /. requests to a Google-cache of your webpage (assuming you're lucky enough to have the page cached before someone notices).

      --
      It is more productive to voice thoughtful opinions (reply) than to judge (moderate) others.
    3. Re:Anti-slashdotting? by Anonymous Coward · · Score: 0

      why don't ya just redirect slashdot referrals back to slashdot :-)

    4. Re:Anti-slashdotting? by Anonymous Coward · · Score: 0

      why don't ya just redirect slashdot referrals back to slashdot :-)

      And when Slashdot does a story on Slashdot, how come Slashdot doesn't get slashdotted? hmmmm?

  15. Microsoft version: by DonkeyJimmy · · Score: 5, Funny

    Me: Computer, I would like to open Netscape
    Computer: I have anticipated you would like to open IE and have already opened it for you.
    Me: Ok, then I would like to go to the game review site to see what I want to buy.
    Computer: I have already begun the download of the new Age of Empires game, your account has been charged.
    Me: Can I at least go to the bathroom?
    Computer: No.

    --
    "Probably the toughest time in anyone's life is when you have to murder a loved one because they're the devil." -Philips
    1. Re:Microsoft version: by Anonymous Coward · · Score: 4, Funny

      Me: I would like to upda...
      Computer: I have already run auto update. all your warez are belong to us.

    2. Re:Microsoft version: by Anonymous Coward · · Score: 0

      ok ok...i knew that was not funny...*shit* why did i hit the enter key ....*quick think of something*

      ok ok...here it is:

      ME: Computer, engage the forward nacells at warp 9.4
      Computer: In Soveit Russia...

      FUCK...
      ok, that was it...last post. no more. i'm done.

    3. Re:Microsoft version: by MyHair · · Score: 2, Funny
      Is this a new virus or clever marketing scheme?

      Either way... (loading double-barreled shotgun)


      (credit to Dilbert/Scott Adams)

    4. Re:Microsoft version: by smittyoneeach · · Score: 0, Offtopic

      But wait!
      ME: Computer, generate random video of a love godess across a lot of CPUs, for a high-performance performance.
      Computer: Starting imaging, on a beowulf cluster, of those Natalie Portman photos of her being herself...

      Help me, please!

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    5. Re:Microsoft version: by jojor · · Score: 1

      Me:" Open the door, Computer"
      Computer:" I'm afraid I cant let you do that Dave...:"

    6. Re:Microsoft version: by Anonymous Coward · · Score: 0
      Me: Can I at least go to the bathroom? Computer: No.

      Damn, I was expecting something along the lines
      Me: Can I at least go to the bathroom?
      Computer: It's already too late.

    7. Re:Microsoft version: by Tony-A · · Score: 1

      Is this a new virus or clever marketing scheme?

      Is there a difference?

      Yeah, viruses are kinder.
      (You're right about the double-barreled shotgun;)

  16. Don't click that link by Anonymous Coward · · Score: 3, Funny

    It's a trap! We've got to give this website more time. Concentrate all firepower on the next article below!
    /ackbar

    1. Re:Don't click that link by Trogre · · Score: 4, Funny

      iptables: "Httpd, we've lost our port 80 packet deflectors"
      httpd: "Intensify the firewall, I don't want anything to get through."
      iptables: "Httpd, look!"
      httpd: "INTENSIFY THE FIREWALL!"
      iptables: "Too late!"

      --
      "Nine times out of ten, starting a fire is not the best way to solve the problem." - my wife
    2. Re:Don't click that link by Alsee · · Score: 1

      Well duh!
      Everyone knows it doesn't matter how much you intensify the firewall. You obviously should have remodulated it with a hyperspanner.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    3. Re:Don't click that link by Trogre · · Score: 1

      No no no!

      This one goes here, that one goes there!

      --
      "Nine times out of ten, starting a fire is not the best way to solve the problem." - my wife
  17. It's about time... by FyRE666 · · Score: 5, Funny

    ... the Mozilla developers added a special "Slashdotted" plugin you know. So you could launch a special tab that would keep hammering away at a site in the background until it did bloodywell load ;-)

    1. Re:It's about time... by root+66 · · Score: 2, Funny

      which would fit into one two categories: 1. solution for already solved problem, 2. killer feature.

      --
      -- I love the smell of Blue Screens in the morning.
    2. Re:It's about time... by Mattsson · · Score: 1

      Yeah! Come on everone! Lets hammer the slashdotted sites!
      That'll fix the problem. Honestly. Promise! =)
      *looks serious*

      --
      /.Mattsson - My native language is not English, so please don't whine over linguistic errors. (That's lame anyway...)
    3. Re:It's about time... by ottffssent · · Score: 4, Interesting

      I know that's Score:5 Funny but there's a serious note here.

      If a site is down, Mozilla could pretty easily grab the google cache instead. Or, if there's no google cache or if the cache matches the current page, check archive.org. Mozilla could auto-generate a page offering the user some options. Think about it - it would be the end of 404 errors. Instead of

      404 The requested page could not be found.

      you could get

      The site you requested is currently down. Would you like to use Google's cache instead? I also have a snapshot of the page you requested from August 12, 2002 but older ones are available here.

    4. Re:It's about time... by ergonal · · Score: 1

      Wouldn't this be putting an unnecessary load on Google and the Wayback machine? Not saying they couldn't handle the strain, but maybe if it was an option not enabled by default perhaps.

    5. Re:It's about time... by Dr.+Spork · · Score: 1

      I like this idea very much. I hope some kind soul writes it up as a plugin.

    6. Re:It's about time... by da+cog · · Score: 3, Funny

      Don't you think mozilla is bloated enough already? If they added that, then they might as well just go ahead and include a kitchen si... wait... err... nevermind.

      --
      Snarkiness is inversely proportional to wisdom because it emphasizes feeling right rather than being right.
    7. Re:It's about time... by Gorphrim · · Score: 5, Insightful

      i wonder did anyone bother submitting this idea to the Mozilla people instead of to /. ?

      --

      Queens of the Stone Age - they rule
    8. Re:It's about time... by Anonymous Coward · · Score: 0

      Then it doesn't have to search for the information right away. The page could simply have links saying "Search Google for a cached version of this page."

    9. Re:It's about time... by Pharmboy · · Score: 1

      i wonder did anyone bother submitting this idea to the Mozilla people instead of to /. ?


      I wonder if anyone bothered to ask GOOGLE if it was ok. They did just threaten to sue some guy for using the term GOOGLE as a verb on his website. Had an article on it here just 2 days ago.

      I'm too lazy to look up the original link from 2 days ago. Just wait a day or two and read it then, I'm sure it will get duped ;)

      --
      Tequila: It's not just for breakfast anymore!
    10. Re:It's about time... by Anonymous Coward · · Score: 2, Informative
      They did just threaten to sue some guy for using the term GOOGLE as a verb on his website.
      No, they didn't. And it wasn't a cease-and-desist letter. All they said was, "Hi, I'm a google lawyer (TM). We like our trademark, which for obvious reasons you'll understand. Could you please indicate that google is a trademark in your definition, or, if it's easier, just remove it? Thanks.".

      Unlike you, I'm not too lazy to type "google" into the Slashdot search box you probably see at the top-right of this page, click search, and click through to the article and from there the (NON-cease-and-desist) letter.
      It reads, in full:

      Dear Mr. McFedries:

      I am trademark counsel for Google. I have recently become aware of a
      definition of "google" on your website, www.wordspy.com. This definition
      implies that "google" is a verb synonymous with "search." Please note that
      Google is a trademark of Google Technology Inc. Our brand is very
      important to us, and as I'm sure you'll understand, we want to make sure
      that when people use "Google," they are referring to the services our
      company provides and not to Internet searching in general. I attach a copy
      of a short, informative piece regarding the proper use of "Google" for your
      reference.

      We ask that you help us to protect our brand by deleting the definition of
      "google" found at wordspy.com or revising it to take into account the
      trademark status of Google.
      [basically saying: Note: Google (TM) is a registered trademark of Google Technologies].

      Now quit spreading FUD. I love Google.
    11. Re:It's about time... by Omnifarious · · Score: 1

      Why not instead use Gnutella or one of the lovely peer to peer swarming protocols to download it instead? That's what they're for. I don't understand why Mozilla doesn't already do this when several of these protocols already work explicitly on URLs.

    12. Re:It's about time... by Anonymous Coward · · Score: 0
      If they added that, then they might as well just go ahead and include a kitchen si... wait... err... nevermind.

      Hey moderators. Over here.

      * AC whistles

      Can we get some service? Need some +n Funny for the parent here, if you will. Thanks.

    13. Re:It's about time... by sjames · · Score: 1

      The letter was polite and reasonable. I suppose you'd prefer the usual, I am a lawyer god, you are unworthy of even licking the dirt from my boots, obey me or else letters?

      They didn't even ask that he remove the definition, just to note that it is TM. If only other lawyers would read that and learn!

    14. Re:It's about time... by Chris+Canfield · · Score: 1

      Opera. Right-click. Reload every 30 seconds. Done.

      --
      This Sig is a mnemonic device designed to allow you to recognize this author in the future.
    15. Re:It's about time... by blibbleblobble · · Score: 1

      "i wonder did anyone bother submitting this idea to the Mozilla people instead of to slashdot ?"

      Where do you think the mozilla hackers live?

  18. Re:Three comments and slashdotted already... by Anonymous Coward · · Score: 0

    damnit man, i told you to lay off the coke.

  19. It would be neat... by oqti · · Score: 1

    If some new scheduler would use fancy statistical methods to learn about your machine's usage patterns, and adapt its predictions to it.

    Of course, and I highly suspect it, I may be talking out of my ass.

    --

    magic is obscurity
    1. Re:It would be neat... by DonGar · · Score: 1

      At a somewhat higher level, I've always wanted a compiler that goes back and reoptimizes the executables on my machine based on usage patterns. At the very least, it sounds like a good idea.

      --
      plus-good, double-plus-good
    2. Re:It would be neat... by norton_I · · Score: 4, Informative

      GCC (and I assume others) can do this. Basically, you compile with -fprofile-arcs, run the executable enough to generate sufficient data, then compile with -fbranch-probabilities. This will try to order basic blocks so that the CPU predicts branches correctly most often.

      I have never done it, but it is supposed to work. Unfortunately, it is pretty much limited to static analysis -- it doesn't allow for programs whose usage patterns change with time. For that you need some kind of dynamic recompilation, such as provided by HP's Dynamo, Transmeta's code morphing, or perhaps some Java JITs (I don't know if any of them implement this).

      Personally, I think profile directed optimization done by a static compiler is a waste of time. All optimizations should be done at the best place, and for many optimizations, that is the static compiler, but many others can be better done by run time optimizers, or the CPU, and this is one of them.

    3. Re:It would be neat... by AstroJetson · · Score: 1

      I vaguely remember some time ago reading about a modification to the shell that would do this...or something similar. For example if you're a programmer you might spend most of your time doing this:
      $ vi foo.c
      $ make
      $ gdb foo
      $ vi foo.c
      $ make
      $ gdb foo
      etc.

      This shell could pick up on the pattern and anticipate what you were about to do.

      --
      Admit nothing, deny everything and make counter-accusations.
    4. Re:It would be neat... by harvardian · · Score: 0
      Schedulers are run every time you switch processes, which happens quite a few times a second (every time you move the mouse the window manager needs to update the mouse position, if that helps you understand how frequently this happens). As a result, a scheduler that takes, let's say, a tenth of a second to compute the next process it wants to run will lag .1 seconds every time you move your mouse. This is beyond unacceptable for even a casual workstation.

      So, basically, if you could find a way to use fancy statistical methods in a couple of lines of code, you'll be a very famous man. The amount of simplicity many systems use is something like this:

      1. Did the current process use its entire time slice? If yes, lower priority; if no, raise it.
      2. Loop through the priority queues and pull out the first proc we see, return it
      3. Done
      (of course, this is only one popular algorithm, but it doesn't get much more complicated than that AFAIK)
    5. Re:It would be neat... by Anonymous Coward · · Score: 0

      The "loop through" part is not a good idea.

      That the O(n) scheduler in Linux wasn't among the first things scrapped from the 0.x-versions is unbelievable.

    6. Re:It would be neat... by Anonymous Coward · · Score: 0

      Dynamic branch prediction usually requires dedicated hardware, and a cache of places where conditional branches have been taken recently. These predictors can then be used for speculative filling of the pipeline. For more details see the famous Hennessy and Patterson book (the Quantitative Approach).

    7. Re:It would be neat... by smittyoneeach · · Score: 1

      Except when you want to do something slightly different.
      What about scripting?
      The cynic in me figures that most of these chrome-and-tailfin features are about driving you to buy more hardware as much as they are about improving the computing experience.

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    8. Re:It would be neat... by AstroJetson · · Score: 1

      It's been a while so I really don't remember the details. The shell didn't just automatically run the next command it thought you wanted to run. You had to hit TAB or something, sorta like filename completion. So scripting wasn't affected.

      --
      Admit nothing, deny everything and make counter-accusations.
    9. Re:It would be neat... by TheRaven64 · · Score: 1

      I'm not sure if it's made it into version 1.1, but this kind of runtime profiling is a planned feature for the .NET framework.

      On a related note, I've given up trying to install the copy of Visual Studio .NET MS gave me, after the installation crashed for the 5th time. Out of patience error.

      --
      I am TheRaven on Soylent News
  20. Re:Article text in case of /. effect: (updated) by Mr.+Sketch · · Score: 1

    Now it just seems to be:

    <html><body></body></html>

  21. Re:Three comments and slashdotted already... by Anonymous Coward · · Score: 0

    Hehehehehe... your email address is funny:

    brian_teeter@ass...com

    Teeter....

    Ass.... huhuhuhuhuhuhuhuhuhuhuh

    Teeter and ass!

  22. google cache :( by Anonymous Coward · · Score: 0

    Couldn't find a google cache...poor kerneltrap. Thei Antispamist There 4 I am

  23. sage? by Anonymous Coward · · Score: 0

    not really...dups are pretty frequent...if there is less than two a day i feel violated.

    it does take a sage to predict if it will be a same day dup...now thats talent

    anyone wanna wager?

  24. [OT] Re:It would be neat... by espresso_now · · Score: 1
    Of course, and I highly suspect it, I may be talking out of my ass.

    Would you mind if I used this in my sig?
    --
    Of course, and I highly suspect it, I may be talking out of my ass. -oqti
    1. Re:[OT] Re:It would be neat... by Anonymous Coward · · Score: 0

      looks like you already did ;oP

    2. Re:[OT] Re:It would be neat... by Anonymous Coward · · Score: 0

      Actually, when I posted the comment my sig was the old one, and then I assumed you wouldn't my and to get an idea of what it would look like it set my sig to it, i didn't realize that sigs in slashdot are dynamic apparently and if you change it, it changes all your previously made comments too.

      So, do you mind if I use it?

  25. Oh, come on now... by evanbd · · Score: 1

    You know it's already been done. But if *you* had a plugin that meant you could load slashdotted pages when no one else could easily, and you knew it would only work as long as you didn't give it to other people, would you *really* give to everyone? Then no one would benefit, and the servers would stay hosed even longer...

  26. how it works by diegocgteleline.es · · Score: 5, Informative

    Given that kerneltrap has "Too many connections", i don't know if they have this link: http://www.cs.rice.edu/~ssiyer/r/antsched

    where it explains what anticipatory scheduling does.


    (btw, it seems that freebsd had it for ages)

    1. Re:how it works by Anonymous Coward · · Score: 0

      damn...fresh outta mod points.

    2. Re:how it works by Anonymous Coward · · Score: 0

      No FreeBSD does not have it. The researcher did his proof of concept code on FreeBSD.

    3. Re:how it works by HeelToe · · Score: 1

      • (btw, it seems that freebsd had it for ages)

      Which is why to this day I can't stand to use Linux as a desktop. Once I start a compile, I might as well give up use of the machine for any windowing system tasks. Not the case with FreeBSD (haven't tried others). I've been itchy for Linux to get better VM and scheduler for a long time.

    4. Re:how it works by Anonymous Coward · · Score: 0

      anticipatory doesn't give you latency. It gives you throughput. Good for servers, bad for desktop

  27. Rocky Horror Linux Show by fr2asbury · · Score: 4, Funny
    I see you shiver with antici - - - - (Say it!) - - - (Consti!) - - - pation!

    ;-)

    1. Re:Rocky Horror Linux Show by Anonymous Coward · · Score: 0

      This show would suck without audience partici!

    2. Re:Rocky Horror Linux Show by Anonymous Coward · · Score: 0

      ...pation?

  28. Ok.. I'll bite... what's a Scheduler? by !Xabbu · · Score: 3, Interesting

    What does it do for kernel performance? Or does it do anything for performance? ...I haven't run Linux on a desktop for almost a year. It hurts mommy.. please make the bad man go away!

    --

    - Jimbob
    1. Re:Ok.. I'll bite... what's a Scheduler? by Caoch93 · · Score: 5, Informative
      In this case, they're talking about an I/O Scheduler, which is in charge of planning I/O through some resource so that activities on that resource correctly complete as quickly as possible. To be specific, this scheduler is for the hard disk I/O Scheduler, which plans reads and writes from/to your hard disks.

      The Anticipatory Scheduler is designed to optimize your disk I/O based on the assumption that reads of related material tend to happen in short succession, while writes tend to be singular and larger. As a result, when the scheduler encounters a read, it anticipates that there will be other reads in short succession, so it waits and then checks for them and, if they're there, they move to the front of the line. The name comes from the tiny waiting period when it anticipates future reads.

      This is, of course, a condensed version of what I think I've learned from reading KernelTrap for the last few months. Someone's bound to tell you I'm talking arse.

    2. Re:Ok.. I'll bite... what's a Scheduler? by Anonymous Coward · · Score: 0

      Us Windows users get our own version of your fancy shmancy schedulers, except MS gives it the fitting name Outlook (better than anticipate).

    3. Re:Ok.. I'll bite... what's a Scheduler? by RainbowSix · · Score: 5, Informative

      Other forms of disk scheduling are a little more simple. Assume that the disk is really slow, and lots of requests are coming in that are buffered somewhere. Obviously you want to handle requests that are close to where the disk head currently is since it is faster and you won't have your head going all over the place.

      FCFS (first come first serve) - easy stupid way. Take requests as they come. If you need front end front end, performance suffers because obviously you want to do front front end end.

      SSTF (shortest seek time first) - do the request that is shortest to the head first. The problem with this is if you keep asking for stuff at the front of the disk and have a lone request for the end of the disk, the lone request could get ignored for a long time (starved) since the scheduler does the stuff at the front since seek times are much lower.

      SCAN - the head starts at one end of the disk and goes to the end, servicing requests along the way, but never going back so that that lone request from the previous method does get serviced. When it gets to the end the head moves back toward the front, servicing requests along the way. It keeps going back and forth.

      C-SCAN -Variant of SCAN where it doesn't go back and forth. It goes from front to back servicing requests then goes all the way back to the front before it starts servicing again. It gives more uniform times because if you're using SCAN and your request at the beginning is just missed by the head, you have to wait until it goes all the way to the other end and comes all the way back. In this method it goes to the end and then you're the next request to be serviced if you are at the beginning.

      LOOK - The same as CSCAN and SCAN except it doesn't blindly go to the end of the disk; it stops and turns around when there aren't any more requests in the direction. Of course, if you show up right after the head changes direction, sucks to be you :)

      --
      --------
      It's OK to be social, just don't tell anyone about it.
    4. Re:Ok.. I'll bite... what's a Scheduler? by mgrant · · Score: 1

      Hmm... I noticed that people usually talk about disk IO when discussing IO scheduling, but there are several other kinds of IO. How is the kernel set up? Is there a different IO scheduler for every different type of IO device (network, disk, etc)?

      What about something like USB where you have no idea what kind of device is at the other end?

    5. Re:Ok.. I'll bite... what's a Scheduler? by psamuels · · Score: 1
      How is the kernel set up? Is there a different IO scheduler for every different type of IO device (network, disk, etc)?

      Dude, you don't even want to know how many ways you can schedule network packets in Linux. I mean, don't even go there. (:

      (Yes, different I/O is scheduled in different ways.)

      What about something like USB where you have no idea what kind of device is at the other end?

      I don't know enough about USB to say, but certainly if you have a USB-based "storage class" device, such as a ZIP drive or keychain flash thingy, those requests will be subject to the scheduler in the story before they ever hit the USB bus. Likewise if you are using your network for, say, NFS traffic: reads and writes will go through the filesystem scheduler before they hit the network packet scheduler.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
    6. Re:Ok.. I'll bite... what's a Scheduler? by Anonymous Coward · · Score: 0

      When I was in school look was call Elevator seeking since it worked just like an elevator.

  29. kernel 2.5 by germinatoras · · Score: 1

    doing a task in a few seconds instead minutes like the others

    Excellent point the article! I'm glad I saw this Slashdot first. I can't wait the new kernel to be released.

  30. hmmmm ... ?? by dk.r*nger · · Score: 0, Offtopic
    the new Anticipatory Scheduler performs several times better than the other


    Cool. Let's see a beowulf cluster of these in sovjet russia..


    What the heck is a scheduler? What is it doing in a kernel, anyway?

    1. Re:hmmmm ... ?? by Anonymous Coward · · Score: 0

      >What the heck is a scheduler? What is it doing in a kernel, anyway?
      Ask Microsoft. I think that's what Exchange is supposed to do.

  31. Disk I/O, not CPU schedulers by Wesley+Felter · · Score: 4, Informative

    The blurb didn't mention that the article is comparing disk schedulers, not CPU schedulers.

    1. Re:Disk I/O, not CPU schedulers by Sloppy · · Score: 3, Funny

      Heh, an anticipatory CPU scheduler! "Yup, gcc wanted more time."

      --
      As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
  32. /.ed by Anonymous Coward · · Score: 0

    Too many connections

    I'd read the thing but it's been /.ed

    I can't wait until 2.6 comes out. It's going to be fscking awesome.

  33. Re:Three comments and slashdotted already... by Anonymous Coward · · Score: 0

    No, .sigs don't show up for ACs.

  34. isn't this "news" quite old? by misof · · Score: 2, Interesting

    I remember Ingo Molnar introducing this scheduler running in O(1) time months ago, sometimes late in 2002... AFAIK it is a part of the 2.5 kernel for quite a long time.. and at the time it was first tested there were some benchmarks.. I vaguely remember something about "we tried to launch several hundreds of processes, w.o. the scheduler: 15 minutes, w. the scheduler: 2 seconds." So what is so new about some benchmarks being available?

    Or am I completely off-topic? ;)

    1. Re:isn't this "news" quite old? by Atzanteol · · Score: 1

      Wrong scheduler. This is the I/O scheduler...

      --
      "Ignorance more frequently begets confidence than does knowledge"

      - Charles Darwin
    2. Re:isn't this "news" quite old? by serps · · Score: 1
      I was at linx.conf.au 2002, and Rusty Russell mentioned that test. However, his talk was about the CPU task scheduler, not the disk I/O scheduler which is apparently* being benchmarked in the article.

      * "apparently", since I can't view the article.

      --
      "Einstein argued that [...] God is not capricious or arbitrary. No such faith comforts the software engineer." ~ Brooks
    3. Re:isn't this "news" quite old? by Quixote · · Score: 2

      I think Ingo'a was a CPU scheduler; this one's a disk (I/O) scheduler.

  35. website is now OFFLINE completely by Anonymous Coward · · Score: 0

    the webserver is now OFFLINE completely. those poor swiss uunet foolz cant even take some decent slashdotting.

    guess 's time to change the provider real soon now.

    UUNET sure is bancrupt after this story i'd say.

  36. Good stuff, but... by Corbet · · Score: 5, Informative

    ...of course, LWN readers knew about the anticipatory scheduler back in January. We also looked at the SFQ and CFQ I/O schedulers two weeks ago.

    --
    Jonathan Corbet, LWN.net
    1. Re:Good stuff, but... by Anonymous Coward · · Score: 0

      Fuck you. You will be out of business soon and I will piss on your grave.

    2. Re:Good stuff, but... by 10Ghz · · Score: 1
      ...of course, LWN readers knew about the anticipatory scheduler back in January

      So did Kerneltrap-readers:

      http://www.kerneltrap.org/node.php?id=574

      Ouch! Touché!
      --
      Lesbian Nazi Hookers Abducted by UFOs and Forced Into Weight Loss Programs - -all next week on Town Talk.
    3. Re:Good stuff, but... by Anonymous Coward · · Score: 0

      in soviet russia, graves piss on YOU

  37. Re:Microsoft version:(allready done) by Anonymous Coward · · Score: 0

    >Me: Computer, I would like to open Netscape
    >Computer: I have anticipated you would like to open IE and have already opened it for you.

    Why do you think it takes so long to startup and login, but IE loads so fast.

  38. OMG! by Anonymous Coward · · Score: 1, Funny

    It should anticipate the slashdot effect and teleport 3 new servers into the room, and mirror the website onto them and install a load balencer.

    Or maybe it should just say "There have been 2000 slashdot whores here in the last 10 seconds, I anticipate your one too, so LEAVE NOW!"

  39. Check the mailing list for more info by Miles · · Score: 5, Informative

    If you're really curious, you can check out the mailing list for more info. Try searching for "IO scheduler benchmarking" or "iosched". To save the mailing lists, here's a few interesting benchmarks:

    Parallel streaming reads:
    Here we see how well the scheduler can cope with multiple processes reading
    multiple large files. We read ten well laid out 100 megabyte files in
    parallel (ten readers):

    for i in $(seq 0 9)
    do
    time cat 100-meg-file-$i > /dev/null &
    done

    2.4.21-pre4:

    0.00s user 0.18s system 2% cpu 6.115 total
    0.02s user 0.22s system 1% cpu 14.312 total ...(up to)
    0.01s user 0.16s system 0% cpu 37.007 total

    2.5.61+hacks:

    0.01s user 0.16s system 0% cpu 2:12.00 total
    0.01s user 0.15s system 0% cpu 2:12.12 total ...(up to)
    0.01s user 0.19s system 0% cpu 2:13.51 total

    2.5.61+CFQ:

    0.01s user 0.16s system 0% cpu 50.778 total
    0.01s user 0.16s system 0% cpu 51.067 total ...(up to)
    0.01s user 0.18s system 0% cpu 1:32.34 total

    2.5.61+AS

    0.01s user 0.17s system 0% cpu 27.995 total
    0.01s user 0.18s system 0% cpu 30.550 total ...(up to)
    0.01s user 0.16s system 0% cpu 34.832 total

    streaming write and interactivity:
    It peeves me that if a machine is writing heavily, it takes *ages* to get a
    login prompt.

    Here we start a large streaming write, wait for that to reach steady state
    and then see how long it takes to pop up an xterm from the machine under
    test with

    time ssh testbox xterm -e true

    there is quite a lot of variability here.

    2.4.21-4: 62 seconds
    2.5.61+hacks: 14 seconds
    2.5.61+CFQ: 11 seconds
    2.5.61+AS: 12 seconds

    Streaming reads and interactivity:
    Similarly, start a large streaming read on the test box and see how long it
    then takes to pop up an x client running on that box with

    time ssh testbox xterm -e true

    2.4.21-4: 45 seconds
    2.5.61+hacks: 5 seconds
    2.5.61+CFQ: 8 seconds
    2.5.61+AS: 9 seconds

    copy many small files:
    This test is very approximately the "busy web server" workload. We set up a
    number of processes each of which are reading many small files from different
    parts of the disk.

    Set up six separate copies of the 2.4.19 kernel tree, and then run, in
    parallel, six processes which are reading them:

    for i in 1 2 3 4 5 6
    do
    time (find kernel-tree-$i -type f | xargs cat > /dev/null ) &
    done

    With this test we have six read requests in the queue all the time. It's
    what the anticipatory scheduler was designed for.

    2.4.21-pre4:
    6m57.537s ...(up to)
    6m57.916s

    2.5.61+hacks:
    3m40.188s ...(up to)
    3m56.791s

    2.5.61+CFQ:
    5m15.932s ...(others)
    5m50.602s

    2.5.61+AS:
    0m44.573s ...(up to)
    0m53.087s

    This was a little unfair to 2.4 because three of the trees were laid out by
    the pre-Orlov ext2. So I reran the test with 2.4.21-pre4 when all six trees
    were laid out by 2.5's Orlov allocator:

    6m12.767s ...(up to)
    6m13.085s

    Not much difference there, although Orlov is worth a 4x speedup in this test
    when there is only a single reader (or multiple readers + anticipatory
    scheduler)

    1. Re:Check the mailing list for more info by CoolVibe · · Score: 1
      Hmm, what effect would the AS io scheduler have on compilation speeds? It's not like compiling code is an utterly random write and read operation.

      Just wondering...

    2. Re:Check the mailing list for more info by Anonymous Coward · · Score: 0

      Nice of you to credit the original poster of that - NOT!

      (Can you say "KARMA WHORE!!!"? I knew you could!)

    3. Re:Check the mailing list for more info by Miles · · Score: 1

      You're right--I should have mentioned that Andrew Morton was actually the one who did the benchmarks, and that there are more benchmarks on the list archives.

    4. Re:Check the mailing list for more info by ceeam · · Score: 1

      Wow, doesn't look bad. Anyone care to test this new stuff against ReiserFS?

    5. Re:Check the mailing list for more info by psamuels · · Score: 1
      Hmm, what effect would the AS io scheduler have on compilation speeds?

      Well, in serious compiling, you're mostly CPU-bound, so the I/O scheduling shouldn't make much difference. Of course, if you have a large project and are using recursive Makefiles (which is of course Considered Harmful, but still widely used), the 'make' processes will be doing a lot of fork/exec-ing and a lot of disk reads. The disk reads should be improved, but who knows? Try it yourself.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  40. cache / copy / mirror of page is here (mod up!) by Anonymous Coward · · Score: 1, Informative

    a valid copy and cache of the page is here to be found.

    mod up:

    http://www.stuwo.net/download/ktrap.html

    1. Re:cache / copy / mirror of page is here (mod up!) by Anonymous Coward · · Score: 5, Informative

      here is the clickable link

      mirror of story to be found here

      http://www.stuwo.net/download/ktrap.html

    2. Re:cache / copy / mirror of page is here (mod up!) by 42forty-two42 · · Score: 1

      Here's the canonical one: http://www.kerneltrap.org/node-592.html
      It's exempted from the slashdotting message.

  41. What about other OSen? (*BSD, Windows) by ivoras · · Score: 1

    Is there a comparison, on the same hardware, under same conditions, of the same benchmarks applied on other systems, such as FreeBSD (4-STABLE as well as 5-CURRENT, they are different in many ways) and Windows (both 2k and XP)?

    --
    -- Sig down
    1. Re:What about other OSen? (*BSD, Windows) by hxnwix · · Score: 1

      yeah get them at www.ext2_for_windows_xp.com

    2. Re:What about other OSen? (*BSD, Windows) by CoolVibe · · Score: 2, Informative
      Well, the AS scheduler started life as a FreeBSD implementation (BSD dead? yeah right... whatever) but doing those benchmarks on other OSen on similar hardware is like comparing Apples and Oranges. Hardly worth it.

      Also, I doubt that one could alter the I/O scheduler (let alone install an alternative) in the win* operating systems.

      The AS I/O scheduler is very very interesting. I hope some kind soul would backport it to 2.4.

    3. Re:What about other OSen? (*BSD, Windows) by ivoras · · Score: 1

      I didn't mean that the scheduler should be ported to other systems and then benchmarked, but to take whatever is already present in those system and stress it with the same benchmarks.

      That WOULD be interesting, if only for the fun of it.

      --
      -- Sig down
    4. Re:What about other OSen? (*BSD, Windows) by Anonymous Coward · · Score: 0
      yeah get them at www.ext2_for_windows_xp.com

      You must mean AOL keyword ext2_for_windows_xp, since DNS doesn't allow underscores.

    5. Re:What about other OSen? (*BSD, Windows) by Anonymous Coward · · Score: 0
      BSD is dead. Deal with it. Get over it. Move on.
  42. apache + php bad combination. by Anonymous Coward · · Score: 0

    Use something else!

    the apache + php combination can not handle many connections easily.

    You can put a proxy cache in front, which is an easy way to help on some sites.

  43. here is a working mirror. mod mirrors up at last ! by Anonymous Coward · · Score: 0

    here is a working mirror

    mirror of kerneltrap article here

    http://www.stuwo.net/download/ktrap.html

  44. Patent possibility? by linuxguy · · Score: 1

    I know the free software community hates software patents. But how do you fight bad software patents?
    In the business world, companies fight other people's dumb patents with their own dumb patents.

    1. Re:Patent possibility? by privbit · · Score: 1

      Just because Linux finally figured this out doesn't mean that it stumbled on anything patentable. In this particular case, Linux is one of the last to the party: you have at least Solaris, IRIX and Dynix as prior art, and presumably AIX, DG-UX, HP-UX, and Tru64 as well.

  45. Actually they have by Mastos · · Score: 1

    sortof. You can download this plugin for Phoenix,
    tabbed browsing extensions (and I'm there's probably one for mozilla too) that has an auto-reload feature. You can have phoenix reload a page every few seconds or minutes.

    As a warning, I set it to reload slashdot every 60 seconds at work and left it on over the weekend only to come back to work banned :( Use sparingly...

    1. Re:Actually they have by BJH · · Score: 1

      Same here, although I had it set to a more reasonable "reload every five minutes".

      It bans by IP, so if you're reading from work it can be a bit problematic... they tell you to mail /. to get unbanned, but I have my doubts about their response time.

  46. Sounds like overkill by Anonymous Coward · · Score: 0

    What's wrong with simply reading ahead? The amount extra to read could be tweaked per thread based on previous behaviour, so that threads reading large files sequentially would quickly establish large readaheads, while threads making random access would establish low read aheads. And no need to sit around idly waiting for requests...

  47. Being self righteous used to be cool... by Anonymous Coward · · Score: 0

    ... but that was 15 minutes ago.

  48. Anyone notice 2.4.18 is sticky? by KidSock · · Score: 0, Offtopic

    After upgrading from RH 7.2 to RH 7.3 w/ 2.4.18 I noticed X hangs for literally several seconds (possibly 5 seconds) if anacron kicks off some significant disk activity like when updating the slocate database. Anyone know if this is a known problem?

    1. Re:Anyone notice 2.4.18 is sticky? by AstroJetson · · Score: 1

      I'm using an old Celeron 300 OC'd to 450 as my main Linux desktop at home - this is not a speed demon. I recently allowed Red Hat Update to 'upgrade' me to 2.4.18. I immediately noticed xmms skipping during times of heavy load. For example if I'm ripping a CD with grip while listening to xmms, it skips quite a bit. I'm thinking of going back to the previous version (.9?) so I'd say yes, .18 has issues in the VM and/or scheduler.

      --
      Admit nothing, deny everything and make counter-accusations.
    2. Re:Anyone notice 2.4.18 is sticky? by mrselfdestrukt · · Score: 1

      No. I did not. 2.4.18 is old.
      Well, according to my standards. And I allow my distro to be upgraded by me. Not the other way around.

      --
      "I used to have that really cool,funny sig ,but it got stolen."
    3. Re:Anyone notice 2.4.18 is sticky? by Anonymous Coward · · Score: 0
      And I allow my distro to be upgraded by me. Not the other way around.

      Ah, you must live in SOVIET RUSSIA, then. In CORPORATE AMERICA, Red Hat upgrades you!

    4. Re:Anyone notice 2.4.18 is sticky? by LittleLebowskiUrbanA · · Score: 1

      I never had problems w/ .18 but have you configured /etc/sysconfig/hardiskx(a,b, etc) with the appropriate lines for DMA and other parameters for disk performance. You can do it yourself by setting some hdparm parameters in /etc/rc.local ro use the method mentioned above. Redhat doesn't enable DMA by default.... Something like this in your /etc/sysconfig/harddiskhdx would help USE_DMA=1 MULTIPLE_IO=16 EIDE_32BIT=3

    5. Re:Anyone notice 2.4.18 is sticky? by AstroJetson · · Score: 1

      I'll take a look. I did some hdparm optimization some time ago, but it may have gotten undone by upgrades and such since then.

      Thanks for the tip!

      --
      Admit nothing, deny everything and make counter-accusations.
  49. OT: sigs by Anonymous Coward · · Score: 0

    Sigs are dynamic until the story is archived.

  50. 2.5 is the bomb so far, in so many ways.. by AxelTorvalds · · Score: 5, Insightful
    They should really call it 3.0...

    When I first started hacking on Linux, I was working with a seasoned Linux kernel hacker who my company hired as a consultant. He helped us with some I/O issues and such, did some other tweaks and gave us a ton of inspiration to go get after it ourselves. (You be amazed at how many people are afraid to just start making changes to kernel code) He is a wickedly cool individual and as someone whose had a lot of schooling and experience it was one of the best learning experiences I can remember.

    The first thing I started dorking with after that experience was the scheduler because I, like all other hakers, know how to schedule stuff. At the time, (early 2.x) the scheduler was also a fairly easy to digest piece of code that could have impacts on the system in great ways.

    Well all my stuff got bit bucketed. I called up our consultant guy who my friend by now, "what's the deal? Linus doesn't like my stuff. How do you mail him stuff?" And his answer was that pretty much every body wants to tweak the scheduler, everybody sends stuff in. Linus is sage in his wisdom, schedulers are freaking hard because there is always a pedantic worst case that sucks and actually shows up in the real world. Linus has always done fairly simple things that aren't best but certainly aren't worst. So 2.0 had pretty straight round robin. 2.2 and 2.4 they started to add queuing schedulers with niceness. 2.5 we're going to get a pretty killer scheduler that has taken a ton of effort to tweak and there are still discussions to expose parameters to the user via /proc or something because you can find cases were it doesn't perform as well.

    Now this IO scheduler is opening up a whole new can of worms, it's a new chunk of code called "scheduler" and all hackers know scheduling. In the past it has been fairly simple. It should be fun to watch and the kernel is going to kick mucho ass in the end. There will be a lot of talk and debate about this stuff. It's also distilled down to the trusted set that Linus will let play with things called "scheduler"

    1. Re:2.5 is the bomb so far, in so many ways.. by psamuels · · Score: 1
      Now this IO scheduler is opening up a whole new can of worms, it's a new chunk of code called "scheduler" and all hackers know scheduling. In the past it has been fairly simple.

      Larry McVoy (who should need no introduction) once said: "Screwing around with the elevator is in general a waste of time, but it is a rite of passage for all I/O people." OK, OK, so the disk scheduler is a bit higher-level than the elevator, but I still think it's a cool quote.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  51. WOW CS 162 Lecture by vandel405 · · Score: 3, Interesting

    I'm currently enrolled in cs 162 (OSs) at UC Berkeley, todays lecture was on different flavors of schedulers and this scheduler was mentioned breifly. For more theoretical info see http://webcast.berkeley.edu/courses/archive.html?p rog=116&group=52 for a webcast of the lecture or http://inst.eecs.berkeley.edu/~cs162/Lectures/L11. pdf for a pdf of the lecutre notes.

  52. File I/O primitives by anonymous+cupboard · · Score: 3, Informative
    It seems that the main problem is that the file I/O primitives in Linux are a little too primitive. On some operating systems, there is another layer sitting between the file system and the user which provides record and block management. If I open a file for sequential read or write then the record/block manager knows that it could use read-ahead or write-behind.

    The problem is that such I/O layers need to be implemented at least partially outside user-space in the case where the file is being simultaneously accessed to allow interprocess coordination. Also, to get best use, everything should use it.

    1. Re:File I/O primitives by Wesley+Felter · · Score: 3, Informative

      On Linux the kernel detects sequential I/O and does the readahead automatically. So it's not really clear what Linux is missing.

    2. Re:File I/O primitives by anonymous+cupboard · · Score: 2, Interesting
      Yes, but it doesn't seem to be getting it right hence the problem requiring adaptive I/O scheduling. Certainly ext2 should automatically determine that, for example, our html web page read by Apache is sequential and the data should be read-ahead buffered. However, this doesn't seem to be helping.

      At the same time I'm not quite sure where a solution like adaptive I/O scheduling would help on a real system because, in our example of an Apache server, whilst it is stalled writing a web page to you over TCP, it can be reading another page off disk for me. In a true server load, there is little think time because the next request comes in.

    3. Re:File I/O primitives by Anonymous Coward · · Score: 0

      IMHO the app shouldn't tell the system what it ahs to do. The system should decide what it needs. Everything else is just a hack.

    4. Re:File I/O primitives by psamuels · · Score: 1
      On some operating systems, there is another layer sitting between the file system and the user which provides record and block management. If I open a file for sequential read or write then the record/block manager knows that it could use read-ahead or write-behind.

      Record and block management? Oh, the horror!

      Seriously, as of about a month ago, there is now an implementation of fadvise in the 2.5 kernel, which allows an application to provide "hints" to the disk scheduler such as you propose. For example, you can specify that a file descriptor is POSIX_FADV_RANDOM, meaning that you expect your access patterns to be random, and therefore read-ahead is not useful.

      Alternatively, you can open a file with the O_DIRECT flag, which is another sort of hint that you want the OS to get in your way as little as possible. I believe in O_DIRECT mode you have to provide I/O in 512-byte chunks, but I'm not certain.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
    5. Re:File I/O primitives by cthulhubob · · Score: 1

      Yes, but it doesn't seem to be getting it right hence the problem requiring adaptive I/O scheduling. Certainly ext2 should automatically determine that, for example, our html web page read by Apache is sequential and the data should be read-ahead buffered. However, this doesn't seem to be helping.

      You're misunderstanding the issue here. Linux does read-ahaead on long linear reads just fine. That's not the issue. The issue is primarily not a server issue, in fact. It's primarily a desktop/workstation issue.

      There are often multiple processes on any machine wanting to do I/O simultaneously. Since the hard drive can only process one request at a time, the processes are competing for a limited resource (hard drive thoroughput). Thus, their access has to be scheduled properly to ensure the most efficient use of the hard drive.

      The reason this is a big win is because of a system's apparent speed, or interactiveness. If you've ever been processing audio at a workstation and tried to open a calculator or an xterm or something like that while streaming media is being written to disk, you would know that it sometimes appears as if the computer has practically locked up, except for the sound of the hard drive. If reads can be pushed to the head of the queue, this helps immensely, for several reasons.

      • Interactive processes are dependent on reads, not writes. If a video game or audio processing application or 3d modeling program or web server or almost anything else needs to read data from the disk, it is almost always the case that no more work will be done by that program until it has the data it is looking for. If the read is being blocked by a large sequential write, then it will appear as though the reading process has locked up until the write is done and the read can be serviced.
      • Reads are often small and non-contiguous. In the case of a web server serving a page, it has to read the text of the page, then process additional requests for all of the graphic content included in the body of that page. If it's 2 am and your backup process is tarring up all the changed files in preparation to burning CDs or tape backup, you don't want the person viewing your site to have to wait an extraordinary amount of time for the backup to finish, do you?

      There's a couple more examples I could give, but I'm sure you get the picture. This doesn't have anything to do with read-ahead. That works just fine :)

      --

      In post-9/11 America, the CIA interrogates YOU!
    6. Re:File I/O primitives by CarlDenny · · Score: 1

      This isn't so much a solution for sequentila access as marginally conditional access.

      If you're mucking around in a database, you probably need to walk a chain of record references, with record A containing a pointer to record B, containing a pointer to record C. These records can be offset enough from each other that caching doesn't do the job, or the code might not be optimized to use the cache, or it might need to be synced to disk regularly. But, being in the same file, the requests are still close enough on disk to still be accessed quickly. In these cases, you'll generate a series of requests like:

      Read (Block 100)
      Do calculations to find record A(100)->B(120)
      Read (Block 120)
      Do calculations to find record B(120)->C(150)
      Read (Block 150)
      Do calculations to find record C(150)->D(110)
      Read (Block 110) ...

      If another thread is doing reads and write at block 100000, this form of scheduling can save you a lot of time.

    7. Re:File I/O primitives by anonymous+cupboard · · Score: 1
      Thius sound like something that would be a great help. I follow kernel traffic but not in detail as I don't have spare capacity for a 2.5 series kernel at the moment.

      I have used fadvise type calls before and they are very useful, but are best when they can be left in binary code with the kernel ignoring the call if it isn't supported.

    8. Re:File I/O primitives by anonymous+cupboard · · Score: 1
      The thing that I understand from this paper is that the system is assuming that a future read will be in the proximity of the previous read so stalling for a short time in case a subsequent read comes through in the vicinity.

      The things is that since we got rid of DOS, a pc is now capable of multiprogramming. It is quite normal to run two or more activities, say listening to music and writing something in an IDE. The trouble is when I want to start something new.

      Normally the disks are using an elevator scan which when the disks are well used, it works quite well at sharing the disk out. The problem is that the svan works between the lowest and highest cylinder numbers in any request during the current scan. So if I scan from Cyl 10 to Cyl 100, fine but the next request is for Cyl 11 so I change direction, but the immediately following request is for 101. Sorry, I'm already headed towards 11 so 101 must wait for my scan to complete and reverse direction.

      My feeling is that it would be better to wait only at the end of a cylinder scan to check for new requests. Elevator seeking is good, but only if you are within the range of the current scan.

      One of the issues we were talking about earlier was opening a calculator in the middle of a task, say Xcalc. I had the privilege in my younger days to see a toploader which took 60MB removable hard disk packs (not washing) that were about 70cm or more in diameter. The thing that always was a killer was linking a program image, moving the heads in a very visible but fairly random way.

      With shareable libraries, we have delayed part of the linking until image activation. Even if the shareable library is already in memory, it still must be linked to the image before it can be started. With X11, there is a lot of stuff there and usually a burst of disk activity to bring it all in and to complete the linkage process, which is one reason why calc is always faster to start than Xcalc.

      The long term solution when we have 64-bits of address space is to use based shareable libraries. This allows the image to be truely static-linked but to share code, which is a necessity for X.

      I would end by saying that a large sequential read or write doesn't usualy cause scheduling problems. Especially with the higher speed disks, the main delays are cylinder to cylinder, settle time and to a lesser degree now, rotational latency. You can only read a track at a time in a cylinder, as the heads are preloaded, switching tracks within a cylinder is fast. If you hear your drive, you are usually just hearing the heads starting and stopping moving.

      Your last point about backups is interesting. Some of the better backup programs will attempt to minimise head movement by sorting the data according to location. The disadvantage is that the volume shouldn't change during the backup.

    9. Re:File I/O primitives by anonymous+cupboard · · Score: 2, Informative

      Your idea is quite good for minimalistic databases like MySQL but not so good for the Oracles or whatever that do their own I/O management. They are aware of the diffeernce between tables and values and attempt to logical about the way that they manage them. Frequently they have their own LRU cache and read-ahead strategies independent of the underlying OS.

  53. Finally by esanbock · · Score: 0, Troll

    Despite what you slashdot monkeys may think (half of you have probably never ran Linux), Linux is incredibly slow when compared to Windows. Windows simply handles multithreading better. Mozilla takes 2x as long to open in linux and if I try to open multiple apps at once, it takes minutes for any of them to come up. And you can tell the I/O is crap just by looking at KDE's performance when compared to Win2k. Windows just flies. Part of this of course is that my version of Linux (Debian) can be recompiled to run on many platforms and everyone can tell you that portability comes at the cost of platform-specific performance. But still the i/o and multithreading in linux sucks. But then again, I didn't pay for it.

    1. Re:Finally by jmt9581 · · Score: 1

      Luckily, there is a slashdot monkey here who actually does run Linux. :)

      I don't know what kind of hardware you're running on, but on my P3/933mhz with 256mb of RAM, I've never waited longer than 9 seconds for a window to open, and even that was under a fairly heavy load. Even if Mozilla does take 2x as long to load, does that really prove that the multithreading under Linux sucks? Does Windows suck at handling concurrent connections just because PostgreSQL under Windows craps out after about 50 connections?

      Also, I think that saying that the Linux I/O is based on comparison of Windows to KDE might be a little shortsighted, considering that Windows isn't weighed down by X11 and it's large feature set.

      On a happier note, nice job with your version of Linux (Debian). I like it as well. :)

      --

      My blog

    2. Re:Finally by esanbock · · Score: 1

      Hey after all the kernel reconfiguration and recompilation and code-tweaks, I really do feel like it's mine! My preciousssss...

      BTW, I've got a dual P3 866 w/ 512 Mb. But good piont on the X11. I forget that there's an entire communication protocol between KDE and my video card. I think it's interesting to run a remote KDE session and all over X & TCP/IP, but this is one instance where a feature should be scrapped in favor of performance.

    3. Re:Finally by indefinite · · Score: 2, Interesting

      X11 tru, but not even what makes timing so different. it is windows taking care of its gui (or at least much of it) in process with the OS that really changes things. x11 has to go through system calls.

    4. Re:Finally by indefinite · · Score: 1

      blah... read process as space. i meant system space. too many thoughts at the same time.

    5. Re:Finally by psamuels · · Score: 5, Interesting
      Windows simply handles multithreading better.

      Nah, it handles certain start-up costs for complex applications better. This may or may not have anything to do with multithreading per se.

      And you can tell the I/O is crap just by looking at KDE's performance when compared to Win2k. Windows just flies.

      I don't run KDE, but I understand that it has had speed issues in the past because it uses a lot of interconnected C++ shared libraries, which really tax the dynamic loader. The Windows link scheme, by the way, is much more primitive (read: fast at runtime). Microsoft also uses a hack (disk layout profiling) to speed up load time further. (Not that "hack" is necessarily a bad thing - after all it does get the job done.)

      A couple of years ago, Jakub Jelinek came up with a utility similar to IRIX Quickstart for ELF binaries / libraries, which does "prelinking" to dramatically reduce relocation overhead at runtime in the common cases (without sacrificing flexibility, for the uncommon cases). A side effect is reducing memory usage due to COW. I never heard what happened to that project - anyone know if it is considered production-quality yet, or if binutils / glibc will be shipping it any time soon? Apparently it helped KDE quite a bit.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
    6. Re:Finally by Phosphan · · Score: 2, Informative
      Prelinking is already there. Have a look at this page for an introduction (well, with some gentoo-specific stuff).

      KDE has gained quite some speed with the last version changes. The gap is not as large as you remember.

    7. Re:Finally by psamuels · · Score: 1
      Prelinking is already there. Have a look at this page for an introduction

      Thanks, yes, that's the utility I was talking about. Apparently the necessary compiler / linker / loader support is now shipped with gcc 3.2, binutils 2.13.9x and glibc 2.3. Good to know - it's about time! The ELF binary format gave us enormous flexibility compared to older / simpler formats ... but the catch was the comparably enormous run-time linking cost. Prelinking eliminates most of the latter, so it's in general a really Good Thing.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  54. No, different scheduler by Kourino · · Score: 1

    No, this is different. Ingo's O(1) scheduler is Linux's process scheduler, what determines when different processes get to use the CPU. The anticipatory scheduler is Nick Piggins' baby; it's an I/O scheduler, which decides when processes get to read to and write from devices.

    Part of the idea is: prefer reads to writes, and assume that if you read once, more reads will follow (usually true), so wait for the next read(s) to come in and service them all at once; often, subsequent reads are to contiguous locations on disk, so if you just service them all at once you don't have to seek back if you service one, then go do something else, then get the next read.

  55. oh goody -- now tackle the hard stuff by Anonymous Coward · · Score: 0

    We have something that any commercial OS had right from the get go. How exciting. Now how about fixing a little thing I like to call CaSe SEnSiTIvitY.

  56. Full text of article by Anonymous Coward · · Score: 0

    This is where the full text of the aticle would be, as I finally was able to see it. But alas, Slashdot's stupid fucking lameness filter won't let me add it.

    When I was browsing at -1 to make sure I wasn't the 57th person to add the article text, I noticed some lovely ASCII depicting a gay man's ass though, that, accoring to the lameness filter, is LESS lame than this article. Perhaps the troll-moron that posted it should submit it as a story to slashdot.

  57. Re:Article text in case of /. effect: (updated) by Anonymous Coward · · Score: 0

    Sorry 'bout your uid, man.

  58. There we go again... by Kynde · · Score: 1

    That's just great. If this is gonna be anything like the db benchmarking boom a year ago in lkml for the new vm which resulted some increase in db benches and fscked up the interactivity completely (by being a really happy page thrower), we're looking for a real nice desktop scheduler... :)

    Seriously though, Morton's a great chap and one of the few that has really worked for also a desktopwise usable kernel (low latency patches, lock breaking patches, and the list would go on forever).

    I can barely wait for 61-AS to compile...

    --
    1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
  59. multiple write tasks, why ! que it with shell? by aaron_pet · · Score: 2, Interesting

    The article mentions multiple simultaneous writes and reads... Doing two tasks at once in much more expensive than doing them sequentially.

    Why not use the download manager programs... for all file transfering?

    My priorities:
    1. user interface responds effectively in realtime.
    2. CD writes don't fail
    3. Video doesn't skip
    4. files transfer quickly.

    I would actually like the ability to switch the mode of the file schedualer.

    If I am not doing 2. or 3. then why not switch to something that makes 4 happen?

    I saw something rediculous, like a 10 second wait for a login prompt??!?!

    The system should have that all ready ahead of time, and it should take no more than .5 second to get a login screen.

    --I don't care about spelling enough to spend the vast quantity of time to get this to the spell checker.

    --
    Please use [ informative / summarizing ] SUBJECT LINES
    Flame me here
    1. Re:multiple write tasks, why ! que it with shell? by Anonymous Coward · · Score: 0

      is it my imagination or are more recent versions of linux less responsive than before. maybe it's not the kernel but the UI (gnome or KDE), or the shells themselves... i have an old RH6.1 box here at work i use as a fairly dumb terminal onto our development servers (running RH7.3) and both the shell and emacs keep up with my typing no problems. other people have RH7.3 on their machines (identical hardware to mine, or slightly better) and the shell and emacs seem to always be a few keystrokes behind. it's like typing into VC++ where you have to keep pausing while it catches up with you. my box may not be as flash and pretty as 7.3 but it is a lot nicer to work with.

      ps. pls don't suggest i upgrade to some other linux distro - this is my work box and the choice of distro is dictated by the fact we use some commercial middleware products in our development and they only officially support RedHat so that's what we stick with for an easier life. we did have some other distros for a while but we had to standardise for the sake of simplicity...

  60. Oops, didn't say why, by aaron_pet · · Score: 1

    When I copy two things at once, that is because I don't want to be arround the computer to select the next file.

    I rarely care when it does it, I just don't want to be there.

    Some times I want to move a file to make room for another file that I have to get.

    If I could tell the computer to start downloading as soon as the move is done, I'd walk away from the computer and go exercise or something. (I'm thinking p2p, full HD, I could probably already do this with shell scripting)

    I spend WAY too much time sitting in front of the computer watching status bars slowly lengthen, then shorten...

    --
    Please use [ informative / summarizing ] SUBJECT LINES
    Flame me here
  61. Not exactly by the+ed+menace · · Score: 2, Informative

    Actually Mach was developed at CMU under Rick Rashid. Tevanian was a graduate student of his. Most of the Mach team is at Microsoft Research, including Rashid (who heads up Microsoft Research). They tried to convince Tevanian to come there, but he decided instead to go to NeXT Computer, which also was based on the Mach microkernel. When Apple acquired NeXT, it took most of their OS and development philosophy also.

  62. Anticipation by Ed+Avis · · Score: 0, Redundant

    I can't wait for the anticipatory scheduler to be used in a stable kernel release... I'm really looking forward to it.

    --
    -- Ed Avis ed@membled.com
  63. Profile Guided Optimisation by jpmorgan · · Score: 1

    It's called profile guided optimisation. Most decent compilers support it these days.

  64. Even Ketchup can't wait anymore by Anonymous Coward · · Score: 0

    Heinz Ketchup has a squeeze bottle on the market now. Don't know if they still have the glass. If so, they'll probably be phasing it out.

    Even Ketchup has the need for speed!

    1. Re:Even Ketchup can't wait anymore by Anonymous Coward · · Score: 1, Funny

      A viscous circle, no?

  65. Adding gearshift to a Linux box ? by ehack · · Score: 1

    Will be adding a gearshift to a Linux box soon, ie a control that allows us to switch the machine from Web Server to DVD machine to interactive development station ?

    The difference between waiting 60 seconds and 15 seconds for a login prompt MATTERS !

    Methinks we need new benchmarks that take interactivity into account explicitly, or things will never improve.

    --
    This is not a signature.
    1. Re:Adding gearshift to a Linux box ? by Anonymous Coward · · Score: 0

      That's what the contest benchmark is for: it simulates a user task (a kernel compile) in presence of system load (io load, mem load, process load...); so the faster the kernel compilation finishes; it means that hte system was more "interactive"

    2. Re:Adding gearshift to a Linux box ? by ehack · · Score: 1

      Interactive means something is "clicking around" . Interactive is very different from "behaviour under load" although the latter is also an important issue.
      I am not saying that behavior under load is unimportant;
      but a car shifts gears for a slope and for high speed.

      Maybe KDE could auto-magically change the scheduler to speed up reactivity whne it sees the user clicking around ?

      --
      This is not a signature.
  66. And like everything else in Linux land... by Anonymous Coward · · Score: 0

    ...the article is utterly unreadable. Just a plain text dumb. Come on people, is it that hard to plot a few datapoints in a graph?

  67. I don't care about schedulers by jlanng · · Score: 0, Offtopic

    I want to know what it was like meeting Princess Diana!

    Diana: Her True Story in Her Own Words by Andrew Morton

    1. Re:I don't care about schedulers by jlanng · · Score: 1

      Duh, it isn't offtopic. Have you read the article? The guy who did the benchmarks shares the name with the guy who wrote the famous book

  68. Is there a patch against the 2.4.20 series kernel? by Anonymous Coward · · Score: 0

    I'd really like on to enable this feature. surely it can be done..? Or is this patch compatible with the 2.4.20 series kernel?

  69. Separating devices? by 42forty-two42 · · Score: 1

    The static copy of the story dosen't indicate if the I/O scheduler blocks on all filesystems, or separately on each one? Ie if I have a read on filesystem A, would another write on filesystem B be affected?

  70. Preemption patches by Sits · · Score: 2, Informative

    Are you sure that you are not seeing the improved desktop interactivity from the kernel premption and low latency patches in 2.5? I suspect that they would affect desktop interactivity more than this scheduler...

  71. ObComicBookGuy by sharkey · · Score: 1
    You obviously should have remodulated it with a hyperspanner.

    It's a HYDROSPANNER. Your innacurate Star Wars references make me laugh.

    --

    --
    "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  72. Anticipatory scheduling is: by master_p · · Score: 3, Informative

    Here is the explanation of what anticipatory scheduling is. From what I have understood (please correct me if I am wrong, I am not a kernel hacker), 'anticipatory scheduling' means the following:

    The I/O subsystem (the part of the operating system that reads/writes to/from the hard disk) waits a little longer before servicing an I/O request from an application other than the current one; if the current application issues another I/O request while the I/O subsystem is waiting, the overall system throughput is higher because the hard disk's head moves less.

  73. Linux != (KDE || GNOME) by moncyb · · Score: 1

    Linux is incredibly slow when compared to Windows.

    You don't know what you are talking about. I've run plenty of Linux and M$ configurations, and every time Linux has been faster. My 500Mhz K6-2 Linux system takes less than 30 seconds to boot, including the 10-15 seconds the BIOS takes.

    Windows simply handles multithreading better.

    Yeah whatever. Linux handles forking many times better.

    Mozilla takes 2x as long to open in linux and if I try to open multiple apps at once, it takes minutes for any of them to come up.

    What are you comparing against? Mozilla on Linux vs IE on Windows? You do realize MS preloads the IE binaries on boot? If it's Mozilla on each platform, I'd want to know why it takes longer. Does your binary have GNOME/KDE dependencies? The developers may also have put in MS Windows specific stuff--Netscape's primary focus was and is MS Windows for the most part, and their developers suck--which is why Mozilla/Netscape Navigator are so bloated and crappy in the first place.

    The reason it takes so long to start up because it is a bloated piece of crap, and the other apps who take minutes to come up must be bloated too. (you mentioned KDE, it is not essential, and it is very bloated. It also requires a daemon called DCOP, which probably accounts for half the startup time.) This is why your "linux" apps take a long time to start.

    I don't run KDE or GNOME. Most of my programs don't take more than 5 seconds to load, and start instantly if their files are already in my cache. The only two that don't are GIMP and Mozilla. The GIMP takes less than 15 seconds, and only so because it has tonnes of plugins to load. Mozilla is bloated like I said.

    And you can tell the I/O is crap just by looking at KDE's performance when compared to Win2k. Windows just flies.

    Yes, KDE's performance. Not the performance of Linux. Not XFree86's performance. KDE's performance. You do not need KDE or GNOME to run a Linux workstation. I don't get why people do this.

    Part of this of course is that my version of Linux (Debian) can be recompiled to run on many platforms and everyone can tell you that portability comes at the cost of platform-specific performance.

    A bogus statement. If you have a good compiler[1] and use optimizing flags, then cross-"platform"[2] programs don't have a significant performance hit, and not any more than MS's designs. There are some types of applications where assembly language (meaning processor specific instructions) will make the program perform better, but if you look closely, many of the open source projects which will benefit from this already do it--for at least the IA32 (80386+) processors, if not others.

    [1] gcc 2.95.3 is good enough for me, but I hear Intel's Linux compiler works even better for processors made by Intel. The assumption where cross platform applications don't perform well is FUD spread by Microsoft.

    [2] Here I think you mean different processor designs, but it can apply to different operating systems too.

  74. Sorry for the delay by oqti · · Score: 0

    Go on... With or without credit, I don't really care.
    Heh :)

    --

    magic is obscurity
  75. auto karma by leehwtsohg · · Score: 1

    Why not do a script that karma-whores the web page to slashdot the second the site gets slashdotted. Auto karma!
    Actually, I think several people already have such a script.