You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The deliverable of this work item is a router with satisfactory predicted performance. This is an open-ended task.
Profiling and other instrumentation have to be created ad-hoc to reveal opportunities for optimization, followed or interleaved with a cycle of implementing and testing improvements. The cycle stops when we agree that performance improvement is no-longer a priority.
Observations from initial profiling and other measurements:
The socket API had a constant and significant packet overhead. iperf3 reveals a minimum packet time of about 1 microsecond no-mater what the network device is: veth+bridge, Gig-e NIC, 10 Gig-e NIC, etc.
Packet processing itself represents 11% of realtime execution in the router (excluding go runtime cost).
with small (172 bytes) packets, 25% of the router time is spent in the kernel sending packets (excluding go runtime cost).
with small (172 bytes) packets, 27% of the router time is spent in the kernel receiving packets (excluding go runtime cost).
Another 30.81% is spent in the go runtime, mostly as:
This item comprises the following tasks:
The text was updated successfully, but these errors were encountered: