[lkml]   [2007]   [Oct]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Network slowdown due to CFS
    On 02-10-2007 08:06, Ingo Molnar wrote:
    > * David Schwartz <> wrote:
    >> I'm not familiar enough with CFS' internals to help much on the
    >> implementation, but there may be some simple compromise yield that
    >> might work well enough. How about simply acting as if the task used up
    >> its timeslice and scheduling the next one? (Possibly with a slight
    >> reduction in penalty or reward for not really using all the time, if
    >> possible?)
    > firstly, there's no notion of "timeslices" in CFS. (in CFS tasks "earn"
    > a right to the CPU, and that "right" is not sliced in the traditional
    > sense) But we tried a conceptually similar thing [...]

    From kernel/sched_fair.c:

    * Targeted preemption latency for CPU-bound tasks:
    * (default: 20ms, units: nanoseconds)
    * NOTE: this latency value is not the same as the concept of
    * 'timeslice length' - timeslices in CFS are of variable length.
    * (to see the precise effective timeslice length of your workload,
    * run vmstat and monitor the context-switches field)

    So, no notion of something, which are(!) of variable length, and which
    precise effective timeslice lenght can be seen in nanoseconds? (But
    not timeslice!)

    Well, I start to think, this new scheduler could be too simple yet...

    > [...] [ and this is driven by compatibility
    > goals - regardless of how broken we consider yield use. The ideal
    > solution is of course to almost never use yield. Fortunately 99%+ of
    > Linux apps follow that ideal solution ;-) ]

    Nevertheless, it seems, this 1% is important enough to boast a little:

    "( another detail: due to nanosec accounting and timeline sorting,
    sched_yield() support is very simple under CFS, and in fact under
    CFS sched_yield() behaves much better than under any other
    scheduler i have tested so far. )"

    Jarek P.
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2007-10-03 10:03    [W:3.133 / U:0.004 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site