Messages in this thread | | | Subject | Re: [PATCH] sched: smart wake-affine | From | Mike Galbraith <> | Date | Tue, 02 Jul 2013 07:38:37 +0200 |
| |
On Tue, 2013-07-02 at 12:43 +0800, Michael Wang wrote:
> +static int nasty_pull(struct task_struct *p) > +{ > + int factor = cpumask_weight(cpu_online_mask); > + > + /* > + * Yeah, it's the switching-frequency, could means many wakee or > + * rapidly switch, use factor here will just help to automatically > + * adjust the loose-degree, so more cpu will lead to more pull. > + */ > + if (p->nr_wakee_switch > factor) { > + /* > + * wakee is somewhat hot, it needs certain amount of cpu > + * resource, so if waker is far more hot, prefer to leave > + * it alone. > + */ > + if (current->nr_wakee_switch > (factor * p->nr_wakee_switch)) > + return 1; > + } > + > + return 0; > +}
Ew. I haven't gotten around to test-driving this patchlet, and I see you haven't gotten around to finding a better name either. Any other name will likely have a better chance of flying.
tasks_related() ... well, nearly any.. tasks_think_wake_affine_sucks_rocks() ..that won't fly either :)
-Mike
| |