lkml.org 
[lkml]   [2008]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [CPUISOL] CPU isolation extensions
    On Mon, Jan 28, 2008 at 08:59:10AM -0600, Paul Jackson wrote:
    > Thanks for the CC, Peter.

    Thanks from me too.

    > Max wrote:
    > > We've had scheduler support for CPU isolation ever since O(1) scheduler went it.
    > > I'd like to extend it further to avoid kernel activity on those CPUs as much as possible.
    >
    > I recently added the per-cpuset flag 'sched_load_balance' for some
    > other realtime folks, so that they can disable the kernel scheduler
    > load balancing on isolated CPUs. It essentially allows for dynamic
    > control of which CPUs are isolated by the scheduler, using the cpuset
    > hierarchy, rather than enhancing the 'isolated_cpus' mask. That
    > 'isolated_cpus' mask remained a minimal kernel boottime parameter.
    > I believe this went to Linus's tree about Oct 2007.
    >
    > It looks like you have three additional tweaks for realtime in this
    > patch set, with your patches:
    >
    > [PATCH] [CPUISOL] Do not route IRQs to the CPUs isolated at boot

    I didn't know we still routed IRQs to isolated CPUs. I guess I need to
    look deeper into the code on this one. But I agree that isolated CPUs
    should not have IRQs routed to them.

    > [PATCH] [CPUISOL] Support for workqueue isolation

    The thing about workqueues is that they should only be woken on a CPU if
    something on that CPU accessed them. IOW, the workqueue on a CPU handles
    work that was called by something on that CPU. Which means that
    something that high prio task did triggered a workqueue to do some work.
    But this can also be triggered by interrupts, so by keeping interrupts
    off the CPU no workqueue should be activated.

    > [PATCH] [CPUISOL] Isolated CPUs should be ignored by the "stop machine"

    This I find very dangerous. We are making an assumption that tasks on an
    isolated CPU wont be doing things that stopmachine requires. What stops
    a task on an isolated CPU from calling something into the kernel that
    stop_machine requires to halt?

    -- Steve


    >
    > It would be interesting to see a patchset with the above three realtime
    > tweaks, layered on this new cpuset 'sched_load_balance' apparatus, rather
    > than layered on changes to make 'isolated_cpus' more dynamic. Some of us
    > run realtime and cpuset-intensive loads on the same system, so like to
    > have those two capabilities co-operate with each other.
    >
    > Ingo - what's your sense of the value of the above three realtime tweaks
    > (the last three patches in Max's patch set)?
    >


    \
     
     \ /
      Last update: 2008-01-28 17:39    [W:4.799 / U:0.116 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site