| Subject | Re: [RFC][PATCH 07/22] sched: SCHED_DEADLINE push and pull logic | From | Raistlin <> | Date | Fri, 12 Nov 2010 22:11:05 +0100 |
| |
On Fri, 2010-11-12 at 17:17 +0100, Peter Zijlstra wrote: > On Fri, 2010-10-29 at 08:32 +0200, Raistlin wrote: > > Add dynamic migrations to SCHED_DEADLINE, so that tasks can > > be moved among CPUs when necessary. It is also possible to bind a > > task to a (set of) CPU(s), thus restricting its capability of > > migrating, or forbidding migrations at all. > > > > The very same approach used in sched_rt is utilised: > > - -deadline tasks are kept into CPU-specific runqueues, > > - -deadline tasks are migrated among runqueues to achieve the > > following: > > * on an M-CPU system the M earliest deadline ready tasks > > are always running; > > * affinity/cpusets settings of all the -deadline tasks is > > always respected. > > I haven't fully digested the patch, I keep getting side-tracked and its > a large patch.. > Yeah, I know, take your time. :-)
> however, I thought we would only allow 2 affinities, > strict per-cpu and full root-domain? > Yes, we do! Writing a better changelog for this already noted for next version.
> Keep 2 per-cpu utilization counts, a hard-rt and a soft-rt, and ensure > the sum stays <= 1. Use the hard-rt one for the planned SF_HARD_RT flag, > use the soft-rt one for !SF_HARD_RT with nr_cpus_allowed == 1, and use > \Sum (1-h-s) over the root domain for nr_cpus_allowed != 1. > As agreed during LPC, that's exactly what I'll do. Let's hope to don't screw up while trying to do the math! :-P
Thanks, Dario -- <<This happens because I choose it to happen!>> (Raistlin Majere) ---------------------------------------------------------------------- Dario Faggioli, ReTiS Lab, Scuola Superiore Sant'Anna, Pisa (Italy)
http://blog.linux.it/raistlin / raistlin@ekiga.net / dario.faggioli@jabber.org [unhandled content-type:application/pgp-signature] |