feat(docs): Add Methodology
[csit.git] / docs / content / methodology / data_plane_throughput / mrr_throughput.md
1 ---
2 bookToc: false
3 title: "MRR Throughput"
4 weight: 4
5 ---
6
7 # MRR Throughput
8
9 Maximum Receive Rate (MRR) tests are complementary to MLRsearch tests,
10 as they provide a maximum "raw" throughput benchmark for development and
11 testing community. MRR tests measure the packet forwarding rate under
12 the maximum load offered by traffic generator over a set trial duration,
13 regardless of packet loss.
14
15 MRR tests are currently used for following test jobs:
16
17 - Report performance comparison: 64B, IMIX for vhost, memif.
18 - Daily performance trending: 64B, IMIX for vhost, memif.
19 - Per-patch performance verification: 64B.
20 - Initial iterations of MLRsearch and PLRsearch: 64B.
21
22 Maximum offered load for specific L2 Ethernet frame size is set to
23 either the maximum bi-directional link rate or tested NIC model
24 capacity, as follows:
25
26 - For 10GE NICs the maximum packet rate load is 2x14.88 Mpps for 64B, a
27   10GE bi-directional link rate.
28 - For 25GE NICs the maximum packet rate load is 2x18.75 Mpps for 64B, a
29   25GE bi-directional link sub-rate limited by 25GE NIC used on TRex TG,
30   XXV710.
31 - For 40GE NICs the maximum packet rate load is 2x18.75 Mpps for 64B, a
32   40GE bi-directional link sub-rate limited by 40GE NIC used on TRex
33   TG,XL710. Packet rate for other tested frame sizes is limited by
34   PCIeGen3 x8 bandwidth limitation of ~50Gbps.
35
36 MRR test code implements multiple bursts of offered packet load and has
37 two configurable burst parameters: individual trial duration and number
38 of trials in a single burst. This enables more precise performance
39 trending by providing more results data for analysis.
40
41 Burst parameter settings vary between different tests using MRR:
42
43 - MRR individual trial duration:
44
45   - Report performance comparison: 1 sec.
46   - Daily performance trending: 1 sec.
47   - Per-patch performance verification: 10 sec.
48   - Initial iteration for MLRsearch: 1 sec.
49   - Initial iteration for PLRsearch: 5.2 sec.
50
51 - Number of MRR trials per burst:
52
53   - Report performance comparison: 10.
54   - Daily performance trending: 10.
55   - Per-patch performance verification: 5.
56   - Initial iteration for MLRsearch: 1.
57   - Initial iteration for PLRsearch: 1.