Performance Bottlenecks¶
Developer page meant for tracking (potential) performance issues.
autofp runmode¶
Autofp has 3 potential bottlenecks:
1. every packet traverses 2 threads, the pkt acq/decode/flow and the stream/detect/output.
2. because of (1) there is a queue between them, requiring locks
3. both threads in (1) require a flow lock, leading to contention (the new lock profiling code shows that nicely)
On the flip side, autofp does somewhat intelligent flow based load balancing, based on how busy a thread is.
potential solutions¶
Move (core of) flow handling to stream/detect/output thread so that we don't need a flow lock in the pkt acq thread.