lkml.org 
[lkml]   [2003]   [Mar]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [patch] "HT scheduler", sched-2.5.63-B3
    Date

    mingo@elte.hu (Ingo Molnar) writes:

    > X is special. Especially in Andrew's wild-window-dragging experiment X is
    > a pure CPU-bound task that just eats CPU cycles no end. There _only_ thing
    > that makes it special is that there's a human looking at the output of the
    > X client. This is information that is simply not available to the kernel.

    Isn't it special because the window manager and other interactive
    tasks are blocked waiting for it? Presumably during a wild-window drag
    there will be loads of block-wakeup sequences between X and the window
    manager. IF every such event gave a little boost to the X server that
    would mean the X server would get loads of interactivity brownie
    points.

    This may be a stupid idea (feel free to ignore, it may even be what
    the kernel already does), but if you had a separate input server and
    display server instead of one X server you could follow the trail all
    the way from the real user.

    /dev/input/mice is special because we know it interfaces to the user.
    The X input server gains points for waiting on /dev/input/mice
    interactive X program gains points for waiting on X input server
    X output server is special because it blocks waiting on the
    interactive X program (and vice versa!)

    The hard part would be detecting interactivity for stuff waiting on ip
    sockets.

    If this information was available to user programs then the X display
    server could even prioritize rendering a new character in bash over
    displaying the fishbowl animation running in the background.

    Jan

    P.S. IMVHO the xine problem is completely different as has nothing to
    with interactivity but with the fact that it is soft
    real-time. i.e. you need to distingish xine from say a gimp filter or
    a 3D renderer with incremental live updates of the scene it is
    creating.
    -
    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:33    [W:4.109 / U:0.148 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site