pub fn poll_ethernet_data_plane_only()Expand description
§実測(2026-08-05、sugi-lab.net の 3.7MB JPEG 取得中)
fetch=4631tick eth_calls=311 eth_ticks=282 eth_lockmiss=219- この関数の内側で使っている時間は取得時間の 6%(282/4631)。 受信処理そのものは重くない。
- 呼び出しが成立したのは 46 秒間で 311 回(≒150ms に 1 回)。
net_service_threadのsleep(10)(100ms)より疎い。 - 差の原因は
USB_LOCKで、試行 530 回中 219 回(41%)が ロックを取れずに諦めている(Core 1 の HID ポーリングと競合)。
つまり律速は「受信処理の重さ」でも「眠る間隔」でもなく、 ロック競合で受信の番が回ってこないこと。
計算量: 1 回の呼び出しは O(F)(F は回収フレーム数、上限 8)。