lkml.org 
[lkml]   [2002]   [Dec]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] set_cpus_allowed() for 2.4

    On Mon, 2 Dec 2002, Andrew Morton wrote:

    > I have observed two problems with the new scheduler, both serious IMO:
    >
    > 1) Changed sched_yield() semantics. [...]

    we noticed this OpenOffice/StarOffice problem in July, while beta-testing
    RH 8.0. In July Andrea already had another yield implementation in his
    tree, which was addressing an unrelated yield()-related regression. I'd
    like to note here that StarOffice/OpenOffice sucked just as much under
    Andrea's yield() variant as the original (and 2.5) O(1) scheduler variant
    did.

    So i talked to Andrea, and we agreed in a rough solution that worked
    sufficiently well for OpenOffice and the other regression as well. I
    implemented it and tested it for OpenOffice. You can see (an i suspect
    later incarnation) of that implementation in Andrea's current tree. My
    position back then was that we should not try to move the arguably broken
    2.4 yield() implementation to 2.5.

    So this is the history of O(1) yield().

    fortunately, things have changed since July, since due to NPTL threading
    the architectural need for user-space yield() has decreased significantly
    (NPTL uses futexes, no yielding anywhere), so the only worry is behavioral
    compatibility with LinuxThreads (and other yield() users). I'll forward
    port the new (well, old) yield() semantics to 2.5 as well, which will be
    quite similar to the yield() implementation in Andrea's tree.

    there's another (this time unique) bit implemented by Andrea, a variant of
    giving newly forked children priority in a more subtle way - i'm testing
    this change currently, to see whether it has any positive effect on
    compilation workloads.

    does this clarify things?

    Ingo

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:31    [W:0.022 / U:30.200 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site