bpfilter performance across commits
| Benchmark | Runtime | Instructions | 20 commits | |||
|---|---|---|---|---|---|---|
| Runtime | Insn | |||||
| Mean | Δ | Mean | Δ | |||
| chain policy, with counter | 67.95 ns | 220 | 67.94 ns (±0.01%) | +0.00% | 220 (±0.00%) | +0.00% |
| XDP prologue, accept policy | 67.53 ns | 220 | 67.53 ns (±0.11%) | -0.01% | 220 (±0.00%) | +0.00% |
| TC prologue, accept policy | 51.73 ns | 217 | 51.99 ns (±0.23%) | -0.50% | 217 (±0.00%) | +0.00% |
| CGroup skb prologue, accept policy | 49.27 ns | 201 | 49.27 ns (±0.01%) | +0.00% | 201 (±0.00%) | +0.00% |
| Netfilter prologue, accept policy | 45.13 ns | 210 | 45.13 ns (±0.01%) | -0.00% | 210 (±0.00%) | +0.00% |
| 1 rule, ip4.saddr | 63.31 ns | 227 | 63.31 ns (±0.01%) | -0.00% | 227 (±0.00%) | +0.00% |
| 8 rules, ip4.saddr | 71.32 ns | 276 | 71.19 ns (±0.04%) | +0.19% | 276 (±0.00%) | +0.00% |
| 32 rules, ip4.saddr | 98.25 ns | 444 | 98.24 ns (±0.04%) | +0.01% | 444 (±0.00%) | +0.00% |
| 128 rules, ip4.saddr | 206.45 ns | 1116 | 206.51 ns (±0.01%) | -0.03% | 1116 (±0.00%) | +0.00% |
| 1 rule, ip4.saddr, 8 elements setset | 84.36 ns | 237 | 84.36 ns (±0.01%) | +0.00% | 237 (±0.00%) | +0.00% |
| 1 rule, ip4.saddr, 128 elements setset | 84.75 ns | 237 | 84.36 ns (±0.01%) | +0.47% | 237 (±0.00%) | +0.00% |
| 1 rule, ip4.saddr, 32768 elements setset | 84.36 ns | 237 | 84.36 ns (±0.01%) | -0.00% | 237 (±0.00%) | +0.00% |
| load chain, ip4.saddr, 8 elements setsetuserspace | 2.47 ms | — | 10.20 ms (±1.39%) | -75.83% | — | — |
| load chain, ip4.saddr, 65536 elements setsetuserspace | 54.86 ms | — | 68.83 ms (±1.79%) | -20.29% | — | — |
| load chain, ip4.saddr, 1048576 elements setsetuserspace | 1446.66 ms | — | 1.56 s (±0.72%) | -6.98% | — | — |
| load chain, 1000 ip4.saddr rules with counters, 4 sets, loggingsetloguserspace | 829.53 ms | — | — | — | — | — |
| load chain, 1000 ip4.saddr rules with counters, 4 sets, loggingsetloguserspace | 977.97 ms | — | — | — | — | — |
| load chain, 1000 ip4.saddr rules with counters, 4 sets, loggingsetloguserspace | 4549.42 ms | — | — | — | — | — |
| 1 rule, ip4.saddr, counter | 68.97 ns | 233 | 69.08 ns (±0.27%) | -0.16% | 233 (±0.00%) | +0.00% |
| 1 rule, ip4.saddr, log linklog | 91.36 ns | 288 | 91.48 ns (±0.11%) | -0.13% | 288 (±0.00%) | +0.00% |
| 1 rule, ip6.saddr | 64.18 ns | 236 | 64.18 ns (±0.01%) | -0.00% | 236 (±0.00%) | +0.00% |
| 8 rules, ip6.saddr | 76.34 ns | 348 | 76.34 ns (±0.01%) | +0.01% | 348 (±0.00%) | +0.00% |
| 32 rules, ip6.saddr | 115.43 ns | 732 | 115.43 ns (±0.00%) | +0.00% | 732 (±0.00%) | +0.00% |
| 128 rules, ip6.saddr | 271.77 ns | 2268 | 271.78 ns (±0.00%) | -0.00% | 2268 (±0.00%) | +0.00% |
| 1 rule, ip6.saddr, 8 elements setset | 90.66 ns | 239 | 90.73 ns (±0.23%) | -0.08% | 239 (±0.00%) | +0.00% |
| 1 rule, ip6.saddr, 128 elements setset | 90.93 ns | 239 | 90.66 ns (±0.16%) | +0.29% | 239 (±0.00%) | +0.00% |
| 1 rule, ip6.saddr, 32768 elements setset | 91.52 ns | 239 | 90.77 ns (±0.26%) | +0.82% | 239 (±0.00%) | +0.00% |
| 1 rule, ip6.saddr, counter | 70.07 ns | 242 | 70.07 ns (±0.00%) | -0.00% | 242 (±0.00%) | +0.00% |
| 1 rule, ip6.saddr, log linklog | 91.85 ns | 297 | 91.96 ns (±0.15%) | -0.12% | 297 (±0.00%) | +0.00% |
| 1 rule, ip6.nexthdr | 136.10 ns | 272 | 136.10 ns (±0.03%) | -0.01% | 272 (±0.00%) | +0.00% |
| 1 rule, meta.sport eq | 62.38 ns | 228 | 62.54 ns (±0.28%) | -0.26% | 228 (±0.00%) | +0.00% |
| 1 rule, meta.sport range | 63.06 ns | 230 | 63.04 ns (±0.19%) | +0.04% | 230 (±0.00%) | +0.00% |
| 1 rule, tcp.sport | 62.71 ns | 226 | 62.62 ns (±0.23%) | +0.14% | 226 (±0.00%) | +0.00% |
| 1 rule, meta.flow_hash | 47.36 ns | 213 | 47.39 ns (±0.05%) | -0.06% | 213 (±0.00%) | +0.00% |
| 1 rule, meta.flow_probability | 54.39 ns | 294 | 54.46 ns (±0.12%) | -0.13% | 294 (±0.00%) | +0.00% |