debug script to track droppped frames (#1749)
This commit is contained in:
parent
77b7d30683
commit
0681fc04ad
30
selfdrive/debug/internal/measure_modeld_packet_drop.py
Executable file
30
selfdrive/debug/internal/measure_modeld_packet_drop.py
Executable file
|
@ -0,0 +1,30 @@
|
|||
#!/usr/bin/env python3
|
||||
import cereal.messaging as messaging
|
||||
|
||||
if __name__ == "__main__":
|
||||
modeld_sock = messaging.sub_sock("model")
|
||||
|
||||
last_frame_id = None
|
||||
start_t = None
|
||||
frame_cnt = 0
|
||||
dropped = 0
|
||||
|
||||
while True:
|
||||
m = messaging.recv_one(modeld_sock)
|
||||
frame_id = m.model.frameId
|
||||
t = m.logMonoTime / 1e9
|
||||
frame_cnt += 1
|
||||
|
||||
if start_t is None:
|
||||
start_t = t
|
||||
last_frame_id = frame_id
|
||||
continue
|
||||
|
||||
d_frame = frame_id - last_frame_id
|
||||
dropped += d_frame - 1
|
||||
|
||||
expected_num_frames = int((t - start_t) * 20)
|
||||
frame_drop = 100 * (1 - (expected_num_frames / frame_cnt))
|
||||
print(f"Num dropped {dropped}, Drop compared to 20Hz: {frame_drop:.2f}%")
|
||||
|
||||
last_frame_id = frame_id
|
Loading…
Reference in a new issue