Fix a bug in currentthe LPM SEQ benchmark (missing break inside a switch block) by restructuring the test loop, and introduce additional options for scanning only the address space announced in current RIB, andwhile introduce an option of repeating lookups over several keys in a sliding-window scheme.ing additional two synthetic test options:
The total of eight combinations of test options are now available through dedicated sysctl hooks, below are results of a few test run on a AMD Ryzen 7 3700X 3.6 GHz CPU:
host: single interface address, local subnet route + default routeANN: scan only the address space announced in current RIB
BGP: linx.routeviews.org DFZ snapshot, 887956 prefixes, 495 next hopsREP: repeat lookups over several keys in a sliding window scheme
The total of eight combinations of test options are now available through dedicated sysctl hooks.
Below are the results of test runs on a AMD Ryzen 7 3700X 3.6 GHz CPU:
```
algo: bsearch radix radix dpdk dpdk dxr dxrhost RIB: lo0 + single interface, local subnet + default route
RIB: host host BGP host BGP host test / algo: radix4 radix4_ll dpdk_lpm4 bsearch4 BGPdxr
seq: 59.6 11.9 2.7 12.018.3 34.9 11.46.8 95.580.9 44105.9
seq_ann: 69.0 12.1 2.7 14.518.9 36.6 11.685.0 94.73.2 45105.0
seq_rep: 59.5 11.9 2.8 12.118.4 34.9 11.56.9 95.680.8 43.3106.2
seq_ann_rep: 69.7 12.1 2.7 14.518.9 36.9 11.685.0 94.63.5 43.7106.4
rnd: 66.9 12.3 2.8 27.918.8 36.3 25.7 143.136.7 88.8 65.2200.3
rnd_ann: 102.2 13.2 2.8 52.4 25.9 20.7 45.6 204.4 143.1 65.654.3 200.7
rnd_rep: 83.7 13.1 6.5 93.1 74.421.2 48.0 135.3 143.123.6 96.0201.1
rnd_ann_rep: 105.1 13.6 6.5 130.0 74.4 143.0 9 22.8 63.5 206.7 164.0 201.4
BGP RIB: routeviews.org DFZ snapshot, 887956 prefixes, 495 next hops
test / algo: radix4 radix4_ll dpdk_lpm4 dxr
seq: 4.0 5.0 15.8 49.5
seq_ann: 4.0 5.0 15.8 49.5
seq_rep: 4.0 5.0 16.1 49.8
seq_ann_rep: 4.0 4.9 16.3 49.8
rnd: 4.0 5.1 33.6 77.2
rnd_ann: 4.0 5.2 33.8 77.2
rnd_rep: 9.0 14.3 108.2 125.5
rnd_ann_rep: 9.0 14.3 107.8 125.4
```