forked from intel/hyperscan
-
Notifications
You must be signed in to change notification settings - Fork 5
Benchmarks
Ivan Koveshnikov edited this page Oct 27, 2022
·
6 revisions
CPU: 2x Intel(R) Xeon(R) Gold 6348 CPU @ 2.60GHz
NIC: 2x Intel(R) E810-2cqda2 (100G 2 ports)
PCIe: 4th gen
Total network bandwidth: 400 Gbps
Distro: Ubuntu 20.04 LTS
Kernel: 5.17
Driver: ice-1.9.11
CPU: 2x Intel(R) Xeon(R) Gold 6242R CPU @ 3.10GHz
NIC: 2x Intel(R) E810 (100G 1 of 2 ports connected)
PCIe: 3rd gen
Total network bandwidth: 200 Gbps
Distro: Ubuntu 20.04 LTS
Kernel: 5.17
Generator: Cisco T-Rex
We use 2 servers for the generation.
- Line rate - maximum practical throughput
- Base - base performance of XDP action, no regular expressions attached
-
Literal - lookup for a constant sub-string inside of payload. Regex:
/private/s; Corpus: printable characters -
Full payload scan - search with access to the whole payload. Regex
/pri.*ate/sH; Corpus: printable characters - Real-life - Our real-life regular expressions. 10 regexes in parallel, backtracking, search from the payload beginning.
We have evaluated XDP_DROP and XDP_TX actions as primerally used in our network.
| pkt size | mpps | gbps | cpu usage |
|---|---|---|---|
| 1500 | 32.0 | 384.0 | n/a |
| 1000 | 48.0 | 379.0 | n/a |
| 512 | 88.0 | 368.0 | n/a |
| 256 | 176.0 | 356.0 | n/a |
| 128 | 328.0 | 346.0 | n/a |
| 64 | 568.0 | 304.0 | n/a |
| pkt size | mpps | gbps | cpu usage |
|---|---|---|---|
| 1500 | 32.0 | 384.0 | 6% |
| 1000 | 48.0 | 379.0 | 8% |
| 512 | 88.0 | 349.5 | 16% |
| 256 | 162.0 | 340.0 | 28% |
| 128 | 307.0 | 314.0 | 51% |
| 64 | 430.0 | 221.0 | 75% |
| pkt size | mpps | gbps | cpu usage |
|---|---|---|---|
| 1500 | 32.0 | 384.0 | 14% |
| 1000 | 48.0 | 379.0 | 20% |
| 512 | 88.0 | 349.5 | 34% |
| 256 | 165.0 | 338.0 | 68% |
| 128 | 244.0 | 250.0 | 98% |
| 64 | 257.0 | 128.0 | 98% |
| pkt size | mpps | gbps | cpu usage |
|---|---|---|---|
| 1500 | 32.0 | 384.0 | 33% |
| 1000 | 48.0 | 379.0 | 48% |
| 512 | 88.0 | 349.5 | 80% |
| 384 | 100.0 | 305.0 | 96% |
| 256 | 108.0 | 220.0 | 98% |
| 128 | 108.0 | 110.0 | 98% |
| 64 | 211.0 | 108.0 | 98% |
| pkt size | mpps | gbps | cpu usage |
|---|---|---|---|
| 1500 | 32.0 | 384.0 | 15% |
| 1000 | 48.0 | 379.0 | 22% |
| 512 | 88.0 | 349.5 | 38% |
| 256 | 161.0 | 330.0 | 74% |
| 128 | 208.0 | 213.0 | 98% |
| 64 | 220.0 | 112.0 | 99% |