[bitbake-devel] [PATCH] runqueue: Fix task weighting algorithm
Richard Purdie
richard.purdie at linuxfoundation.org
Sun Apr 13 10:45:03 UTC 2014
When looking at a list of tasks, do_patch and do_unpack were being
given equal priority when one clearly depends on another. The
reason for this was the default task weights of 0 being to tasks.
This is therefore changed to 1 to allow correct weighting of dependencies
which means the scheduler has better information available to it about
tasks.
Weight endpoints differently (10) for clearer debugging of priorities.
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index 274ccf2..6ca693d 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -370,11 +370,11 @@ class RunQueueData:
for listid in xrange(numTasks):
task_done.append(False)
- weight.append(0)
+ weight.append(1)
deps_left.append(len(self.runq_revdeps[listid]))
for listid in endpoints:
- weight[listid] = 1
+ weight[listid] = 10
task_done[listid] = True
while True:
More information about the bitbake-devel
mailing list