[lkml]   [2009]   [Dec]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: workqueue thing
    > I've seen those consume significant amounts of cpu, now I'm not going to
    > argue that workqueues are not the best way to consume lots of cpu, but
    > the fact is they _are_ used for that.

    AFAIK they currently have the following problems:
    - Consuming CPU in shared work queues is a bad idea for obvious reasons
    (but I don't think anybody does that)
    - Single threaded work is well, single threaded and does not scale
    and wastes cores.
    - Per CPU work queues are bound to each CPU so that the scheduler
    cannot properly load balance (so you might end up with over/under
    subscribed CPUs)

    One reason I liked a more dynamic frame work for this is that it
    has the potential to be exposed to user space and allow automatic
    work partitioning there based on available cores. User space
    has a lot more CPU consumption than the kernel.

    I think Grand Central Dispatch does something in this direction.
    TBB would probably also benfit

    Short term an alternative for the kernel would be also
    to generalize the simple framework that is in btrfs.

    -- -- Speaking for myself only.

     \ /
      Last update: 2009-12-22 19:09    [from the cache]
    ©2003-2014 Jasper Spaans. hosted at Digital Ocean