diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-11-10 14:54:34 +0100 |
---|---|---|
committer | Steve Sakoman <steve@sakoman.com> | 2023-12-04 06:03:01 -1000 |
commit | b5f77e8159ad321f31999af8304f082a2c56b537 (patch) | |
tree | c00ea53fbda15c9a8a70e09df67ad5e53f4ce45f | |
parent | 2b2997ab6bdda730e4b638f416311a73e0c42156 (diff) | |
download | bitbake-contrib-b5f77e8159ad321f31999af8304f082a2c56b537.tar.gz |
runqueue: Add pressure change logging
It is currently hard to tell when bitbake is throttling task execution
due to system pressure changes. Add notes to the console output to make
this clearer, only generating output when the values change.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
-rw-r--r-- | lib/bb/runqueue.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py index 3e89c38bc..ab9e3fbe8 100644 --- a/lib/bb/runqueue.py +++ b/lib/bb/runqueue.py @@ -212,6 +212,10 @@ class RunQueueScheduler(object): exceeds_cpu_pressure = self.rq.max_cpu_pressure and (float(curr_cpu_pressure) - float(self.prev_cpu_pressure)) > self.rq.max_cpu_pressure exceeds_io_pressure = self.rq.max_io_pressure and (float(curr_io_pressure) - float(self.prev_io_pressure)) > self.rq.max_io_pressure exceeds_memory_pressure = self.rq.max_memory_pressure and (float(curr_memory_pressure) - float(self.prev_memory_pressure)) > self.rq.max_memory_pressure + pressure_state = (exceeds_cpu_pressure, exceeds_io_pressure, exceeds_memory_pressure) + if hasattr(self, "pressure_state") and pressure_state != self.pressure_state: + bb.note("Pressure status changed to CPU: %s, IO: %s, Mem: %s" % pressure_state) + self.pressure_state = pressure_state return (exceeds_cpu_pressure or exceeds_io_pressure or exceeds_memory_pressure) return False |