<?xml version="1.0" encoding="UTF-8"?>

<rdf:RDF 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns="http://purl.org/rss/1.0/"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:syn="http://purl.org/rss/1.0/modules/syndication/"
>

  <channel rdf:about="http://lwn.net/headlines/231672/">
    <title>LWN: Comments on "This week in the scheduling discussion"</title>
    <link>http://lwn.net/Articles/231672/</link>
    <description>
This is a special feed containing comments posted
to the individual LWN article titled &quot;This week in the scheduling discussion&quot;.

    </description>

    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>2</syn:updateFrequency>
    <items>
      <rdf:Seq>
	<rdf:li resource="http://lwn.net/Articles/236702/rss" />
	<rdf:li resource="http://lwn.net/Articles/232939/rss" />
	<rdf:li resource="http://lwn.net/Articles/232881/rss" />
	<rdf:li resource="http://lwn.net/Articles/232849/rss" />
	<rdf:li resource="http://lwn.net/Articles/232263/rss" />
	<rdf:li resource="http://lwn.net/Articles/232127/rss" />
	<rdf:li resource="http://lwn.net/Articles/232114/rss" />
	<rdf:li resource="http://lwn.net/Articles/232011/rss" />
	<rdf:li resource="http://lwn.net/Articles/231975/rss" />
	<rdf:li resource="http://lwn.net/Articles/231973/rss" />
	<rdf:li resource="http://lwn.net/Articles/231946/rss" />
	<rdf:li resource="http://lwn.net/Articles/231942/rss" />
	<rdf:li resource="http://lwn.net/Articles/231941/rss" />
	<rdf:li resource="http://lwn.net/Articles/231938/rss" />
      
      </rdf:Seq>
    </items>

  </channel>
    <item rdf:about="http://lwn.net/Articles/236702/rss">
      <title>The SD scheduler is heaven on many server loads</title>
      <link>http://lwn.net/Articles/236702/rss</link>
      <dc:date>2007-06-04T09:00:09+00:00</dc:date>
      <dc:creator>mingo</dc:creator>
      <description>
      &lt;p&gt;
&lt;i&gt;
The SD design never starves anything, ever. It has bound latency. CFS can't guarantee either as well as SD can. 
&lt;/i&gt;
&lt;p&gt;
The CFS design does not starve anything ever either and has bound latency.
I´m wondering why you think that ¨CFS can´t guarantee either as well¨.
&lt;p&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232939/rss">
      <title>CPU vs disk schedulers</title>
      <link>http://lwn.net/Articles/232939/rss</link>
      <dc:date>2007-05-03T12:44:04+00:00</dc:date>
      <dc:creator>boniek</dc:creator>
      <description>
      Agreed. CFQ needs more work so it can schedule writes. Glory to the developer that does this :)&lt;br&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232881/rss">
      <title>CPU vs disk schedulers</title>
      <link>http://lwn.net/Articles/232881/rss</link>
      <dc:date>2007-05-03T08:47:38+00:00</dc:date>
      <dc:creator>eduperez</dc:creator>
      <description>
      While I really apreciate any effort put to improve Linux in general (and CPU schedulers in particualar), I must say that I have never experienced X being sluggish because of other processes starving CPU cycles. However, processes doing intensive disk work tend to have a greater effect on responsiveness; bring some swapping to the table and the game is over...&lt;br&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232849/rss">
      <title>NIH</title>
      <link>http://lwn.net/Articles/232849/rss</link>
      <dc:date>2007-05-03T05:53:17+00:00</dc:date>
      <dc:creator>renox</dc:creator>
      <description>
      The general purpose OS with the best interactivity I know is/was BeOS.&lt;br&gt;
&lt;p&gt;
I think that one of the reason of the good interactivity was that a bigger part of the GUI was inside the kernel..&lt;br&gt;
&lt;p&gt;
I doubt that you'd be able to convince kernel developers to do the same thing.&lt;br&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232263/rss">
      <title>HOWTO deny service</title>
      <link>http://lwn.net/Articles/232263/rss</link>
      <dc:date>2007-04-30T05:55:01+00:00</dc:date>
      <dc:creator>kbob</dc:creator>
      <description>
      Consider an isochronous process like a real time audio processor.&lt;br&gt;
It needs a time chunk every N milliseconds, so that's what it bids for.&lt;br&gt;
&lt;p&gt;
A malicious process could outbid the audio process for a smaller timeslice&lt;br&gt;
right when the audio app needs it.  Then it could busy-loop for just&lt;br&gt;
long enough that the audio app won't be able to finish on time.&lt;br&gt;
Denial of Service.&lt;br&gt;
&lt;p&gt;
On a longer time scale, the isochronous app might be a machine vision&lt;br&gt;
system, a CD burner, or a monthly accounting report.&lt;br&gt;
&lt;p&gt;
The malicious process wouldn't intentionally be malicious, of course.&lt;br&gt;
It would just have an unfortunate self-scheduling policy.&lt;br&gt;
&lt;p&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232127/rss">
      <title>X scheduling fairness</title>
      <link>http://lwn.net/Articles/232127/rss</link>
      <dc:date>2007-04-27T15:58:25+00:00</dc:date>
      <dc:creator>giraffedata</dc:creator>
      <description>
      &lt;blockquote&gt;
There is no part of the screen that's more important to get right than any other.
&lt;/blockquote&gt;
&lt;p&gt;
What if you have a long compile job running in an xterm and are simultaneously browsing the web?  Wouldn't you prefer that CPU time go to drawing the browser windows than updating the xterm?
&lt;p&gt;
With the proposed approximation to credit transfer, it's possible for the X server to use the browser's credit on behalf of the less urgent compile job.
&lt;p&gt;
And even if you're simplistically setting a goal of having each consumer process get the same amount of CPU time, it's possible things would work out so the compile job would get more CPU time than the browser.

      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232114/rss">
      <title>This week in the scheduling discussion</title>
      <link>http://lwn.net/Articles/232114/rss</link>
      <dc:date>2007-04-27T14:11:16+00:00</dc:date>
      <dc:creator>nix</dc:creator>
      <description>
      I don't see how (assuming `breaking the bank' to equate to a DoS attack or something like that). If a process demands heaps of time in the future and doesn't use it, it'll sacrifice all its current time and end up with nothing (i.e. an idling system or other processes using the time instead). If it demands heaps of time and other things do as well, then it won't get that much time. No problem in either case.&lt;br&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/232011/rss">
      <title>This week in the scheduling discussion</title>
      <link>http://lwn.net/Articles/232011/rss</link>
      <dc:date>2007-04-26T15:40:39+00:00</dc:date>
      <dc:creator>pjones</dc:creator>
      <description>
      &lt;i&gt;There's also no way to ensure that X uses the credit for work done on the yielding process's behalf; it could just as easily squander it on wobbly window effects. But it's a step in the right direction.&lt;/i&gt;&lt;br&gt;&lt;br&gt;

I'm not so sure that squandry is a reasonable characterization of desktop effects such as &quot;wobbly window[s]&quot;, nor that ensuring a strong coupling between credit yielded to X and work it performs is desirable.&lt;br&gt;&lt;br&gt;

If you've got the system configured to draw wobbly windows or other desktop effects, then any failure to draw your application's widgets in reasonable time or to wobble the windows correctly would represent the same failure.  In either case, the screen looks bad and usability is degraded; the user suffers.  There is no part of the screen that's more important to get right than any other.  IT must all look good and perform with sufficient speed and responsiveness for the user to have a favorable experience.
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/231975/rss">
      <title>The SD scheduler is heaven on many server loads</title>
      <link>http://lwn.net/Articles/231975/rss</link>
      <dc:date>2007-04-26T12:11:54+00:00</dc:date>
      <dc:creator>simlo</dc:creator>
      <description>
      In practice there is not much difference between O(1) and O(log&amp;lt;number of tasks&amp;gt;). Especially since &quot;1&quot;=&amp;lt;number of priorities in the system&amp;gt;=140 and log&amp;lt;number of tasks&amp;gt;&amp;lt;=log(2^64)=64.&lt;br&gt;
&lt;p&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/231973/rss">
      <title>The SD scheduler is heaven on many server loads</title>
      <link>http://lwn.net/Articles/231973/rss</link>
      <dc:date>2007-04-26T12:05:16+00:00</dc:date>
      <dc:creator>hmh</dc:creator>
      <description>
      All I know is that SD seems to be all I ever wanted for regular (i.e. not HPC) servers.&lt;br&gt;
&lt;p&gt;
The SD design never starves anything, ever.  It has bound latency.  CFS can't guarantee either as well as SD can.  SD allows one to set the exact scheduling priority of everything and it is always respected, as there is no interactive renicing: it is very predictable.&lt;br&gt;
&lt;p&gt;
And since one can also set the rr_interval (scheduling granularity) if the load is not latency sensitive, you can  reduce its cost in context switches.  It still has a few ways to go, but I hope to see in server -ck soon.&lt;br&gt;
&lt;p&gt;
And SD is O(1), too... CFS isn't.&lt;br&gt;
&lt;p&gt;
As someone said in LKML (maybe Con?), if the window managers were not so dumb and would renice things easily and intelligently, it might even be ideal  for desktops.  Oh well :-)&lt;br&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/231946/rss">
      <title>This week in the scheduling discussion</title>
      <link>http://lwn.net/Articles/231946/rss</link>
      <dc:date>2007-04-26T09:24:39+00:00</dc:date>
      <dc:creator>nowster</dc:creator>
      <description>
      &lt;blockquote&gt;This time-as-money analogy can be extended further. I can imagine a system which has a sort of futures market in runtime...&lt;/blockquote&gt;
&lt;p&gt;Could a &quot;&lt;a href=&quot;http://www.imdb.com/title/tt0131566/&quot;&gt;rogue trader&lt;/a&gt;&quot; break the bank? :-)&lt;/p&gt;


      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/231942/rss">
      <title>This week in the scheduling discussion</title>
      <link>http://lwn.net/Articles/231942/rss</link>
      <dc:date>2007-04-26T08:59:29+00:00</dc:date>
      <dc:creator>nix</dc:creator>
      <description>
      This time-as-money analogy can be extended further. I can imagine a system which has a sort of futures market in runtime, where processes that will need runtime in the future can ask for it, costing some of its present runtime to do so and trading off against other processes which are asking for the same thing. (Asking for time at specific instants would cost more.)&lt;br&gt;
&lt;p&gt;
This might be useful for things like multimedia apps that can tell that they have a bunch of especially hefty decoding work coming up in five seconds, or something like that.&lt;br&gt;
&lt;p&gt;
(But I'm just babbling and have no code...)&lt;br&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/231941/rss">
      <title>NIH</title>
      <link>http://lwn.net/Articles/231941/rss</link>
      <dc:date>2007-04-26T08:56:46+00:00</dc:date>
      <dc:creator>nix</dc:creator>
      <description>
      It's not just X. Most large systems involve one process doing work on behalf of another. (The elephant in the room, as ever, is database servers, which often have similar problems internally as well as between them and their client processes.)&lt;br&gt;
&lt;p&gt;
Older Unixes often had *severe* X interactivity problems. X has long been famous for its jerky rendering (especially `jerky mouse syndrome') and CPU hogginess; the jerky mouse has gone away of late, but only by the cheat of running the mouse pointer at insanely high priority and because machines are now fast enough that moving a mouse pointer is cheap.&lt;br&gt;
&lt;p&gt;
      
      </description>
    </item>
    <item rdf:about="http://lwn.net/Articles/231938/rss">
      <title>NIH</title>
      <link>http://lwn.net/Articles/231938/rss</link>
      <dc:date>2007-04-26T08:24:33+00:00</dc:date>
      <dc:creator>zdzichu</dc:creator>
      <description>
      In all those technical discussions lack one (obvious?) observation. There are many unix-like systems running X. Many of them are open source and/or documented in detail. And none of them is known for having X interactivity problem. How those systems solve problem? Do they renice X? Why no developer checked, instead developing new syscalls (pushing work to userspace and making Linux more incompatibile with other *nixes) ? &lt;br&gt;
      
      </description>
    </item>
</rdf:RDF>

