Re: [PATCH] Avoid moving tasks when a schedule can be made.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ingo Molnar wrote:
* Ingo Molnar <[email protected]> wrote:


i think the right approach would be to split up this work into smaller chunks. Or rather, lets first see how this can happen: why is can_migrate() false for so many tasks? Are they all cpu-hot? If yes, shouldnt we simply skip only up to a limit of tasks in this case - it's not like we want to spend 1.5 msecs searching for a cache-cold task which might give us a 50 usecs advantage over cache-hot tasks ...


the only legimate case where we have to skip alot of tasks is the case when there are alot of CPU-bound (->cpus_alowed) tasks in the runqueue. In that case the scheduler really has to skip that task. But that is not an issue in your workload.

The new SMP nice load balancing may cause some tasks to be skipped while it's looking for ones with small enough bias_prios but I doubt that this would cause many to be skipped on a real system.

BTW why do you assume that this problem is caused by can_migrate() failing and is not just simply due to large numbers of tasks needing to be moved (which is highly likely to be true when hackbench is running)?

If it is a "skip" problem that would make the "busting it up into smaller chunks" solution more complex as it would make it desirable to remember where you were up to between chunks.

Peter
--
Peter Williams                                   [email protected]

"Learning, n. The kind of ignorance distinguishing the studious."
 -- Ambrose Bierce
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux