From 6a2ae346aba068307a522bad8fe655430ed4f159 Mon Sep 17 00:00:00 2001 From: Maxime Desroches Date: Wed, 6 Nov 2024 20:30:38 -0800 Subject: [PATCH] ci: relax test_onroad cpu usage bounds (#33951) bounds --- selfdrive/test/test_onroad.py | 41 ++++++++++++++--------------------- 1 file changed, 16 insertions(+), 25 deletions(-) diff --git a/selfdrive/test/test_onroad.py b/selfdrive/test/test_onroad.py index 4908224b64..666bafa3a7 100644 --- a/selfdrive/test/test_onroad.py +++ b/selfdrive/test/test_onroad.py @@ -51,28 +51,28 @@ PROCS = { "selfdrive.controls.radard": 2.0, "selfdrive.modeld.modeld": 17.0, "selfdrive.modeld.dmonitoringmodeld": 11.0, - "system.hardware.hardwared": 3.87, + "system.hardware.hardwared": 4.0, "selfdrive.locationd.calibrationd": 2.0, "selfdrive.locationd.torqued": 5.0, "selfdrive.locationd.locationd": 25.0, "selfdrive.ui.soundd": 3.0, "selfdrive.monitoring.dmonitoringd": 4.0, - "./proclogd": 1.54, - "system.logmessaged": 0.2, + "./proclogd": 2.0, + "system.logmessaged": 1.0, "system.tombstoned": 0, "./logcatd": 1.0, "system.micd": 5.0, "system.timed": 0, "selfdrive.pandad.pandad": 0, - "system.statsd": 0.4, - "system.loggerd.uploader": (0.0, 15.0), - "system.loggerd.deleter": 0.1, + "system.statsd": 1.0, + "system.loggerd.uploader": 15.0, + "system.loggerd.deleter": 1.0, } PROCS.update({ "tici": { "./pandad": 4.0, - "./ubloxd": 0.02, + "./ubloxd": 1.0, "system.ubloxd.pigeond": 6.0, }, "tizi": { @@ -256,32 +256,23 @@ class TestOnroad: cpu_ok = True dt = (self.msgs['procLog'][-1].logMonoTime - self.msgs['procLog'][0].logMonoTime) / 1e9 - for proc_name, expected_cpu in PROCS.items(): + for proc_name, expected in PROCS.items(): err = "" - exp = "???" - cpu_usage = 0. + usage = 0. x = plogs_by_proc[proc_name] if len(x) > 2: cpu_time = cputime_total(x[-1]) - cputime_total(x[0]) - cpu_usage = cpu_time / dt * 100. - - if isinstance(expected_cpu, tuple): - exp = str(expected_cpu) - minn, maxx = expected_cpu - else: - exp = f"{expected_cpu:5.2f}" - minn = min(expected_cpu * 0.65, max(expected_cpu - 1.0, 0.0)) - maxx = max(expected_cpu * 1.15, expected_cpu + 5.0) - - if cpu_usage > maxx: - err = "using more CPU than expected" - elif cpu_usage < minn: - err = "using less CPU than expected" + usage = cpu_time / dt * 100. + + max_allowed = max(expected * 1.8, expected + 5.0) + if usage > max_allowed: + err = "USING MORE CPU THAN EXPECTED" + else: err = "NO METRICS FOUND" - result += f"{proc_name.ljust(35)} {cpu_usage:5.2f}% ({exp}%) {err}\n" + result += f"{proc_name.ljust(35)} {usage=:5.2f}% {expected=:5.2f}% {max_allowed=:5.2f}% {err}\n" if len(err) > 0: cpu_ok = False result += "------------------------------------------------\n"