Messages in this thread | | | Date | Mon, 28 Jan 2008 11:34:50 -0500 | From | Steven Rostedt <> | Subject | Re: [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)? >
| |