Skip to content

Commit a3b2fd1

Browse files
committed
Fix: Enhancement of Trex Bench-Trafficgen Profile for Low-Latency Performance Optimization
TRex traffic generator client profile: continuous 100% load with warmup/teaching packets, fixed random seed, rate/runtime tolerances, max loss threshold, and search/control parameters configured as part of RFC2544 latency improvements
1 parent 6106f0d commit a3b2fd1

File tree

2 files changed

+76
-12
lines changed

2 files changed

+76
-12
lines changed

templates/trafficgen/mv-params.json.template

Lines changed: 39 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,52 @@
33
{
44
"name": "global",
55
"params": [
6-
{ "arg": "trex-active-devices", "vals": [ "TWO_PCI_ADDRS" ], "role": "client", "enabled": "yes" },
7-
{ "arg": "trex-devices", "vals": [ "TWO_PCI_ADDRS" ], "role": "client", "enabled": "yes" },
8-
{ "arg": "server-devices", "vals": [ "TWO_PCI_RSRC_NAMES" ], "role": "server", "enabled": "yes" },
9-
{ "arg": "trex-software-mode", "vals": [ "$TPL_SW_MODE" ], "role": "client", "enabled": "yes" },
10-
{ "arg": "trex-mellanox-support", "vals": [ "$TPL_MLXSUP" ], "role": "client", "enabled": "yes" },
11-
{ "arg": "use-dst-mac-flows", "vals": [ "0" ], "role": "client", "enabled": "yes" },
12-
{ "arg": "use-src-mac-flows", "vals": [ "0" ], "role": "client" , "enabled": "yes"},
13-
{ "arg": "one-shot", "vals": [ "1" ] , "enabled": "yes"},
14-
{ "arg": "rate-unit", "vals": [ "mpps" ] , "enabled": "yes"},
15-
{ "arg": "rate", "vals": [ "0.5" ] , "enabled": "yes"},
16-
{ "arg": "testpmd-forward-mode", "vals": [ "$TPL_FWD_MODE" ], "role": "server", "enabled": "yes" }
6+
{ "arg": "switch-type", "vals": [ "testpmd" ], "role": "server", "enabled": "yes" },
7+
{ "arg": "testpmd-forward-mode", "vals": [ "$TPL_FWD_MODE" ], "role": "server", "enabled": "yes" },
8+
{ "arg": "testpmd-enable-rss-udp", "vals": [ "on" ], "role": "server", "enabled": "yes" },
9+
{ "arg": "testpmd-queues", "vals": [ "1" ], "role": "server", "enabled": "yes" },
10+
{ "arg": "testpmd-queues-per-pmd", "vals": [ "1" ], "role": "server", "enabled": "yes" },
11+
{ "arg": "testpmd-smt", "vals": [ "on" ], "role": "server", "enabled": "yes" },
12+
{ "arg": "testpmd-mtu", "vals": [ "1500" ], "role": "server", "enabled": "yes" },
13+
{ "arg": "testpmd-descriptors", "vals": [ "1024" ], "role": "server", "enabled": "yes" },
14+
{ "arg": "testpmd-burst", "vals": [ "32" ], "role": "server", "enabled": "yes" },
15+
{ "arg": "server-devices", "vals": [ "TWO_PCI_RSRC_NAMES" ], "role": "server", "enabled": "yes" }
1716
]
1817
}
1918
],
2019
"sets": [
2120
{
2221
"include": "global",
2322
"params": [
24-
{ "arg": "frame-size", "vals": [ "64" ], "role": "client", "enabled": "yes" }
23+
{ "arg": "trex-devices", "vals": [ "TWO_PCI_ADDRS" ], "role": "client", "enabled": "yes" },
24+
{ "arg": "trex-active-devices", "vals": [ "TWO_PCI_ADDRS" ], "role": "client", "enabled": "yes" },
25+
{ "arg": "traffic-generator", "vals": [ "trex-txrx-profile" ], "role": "client", "enabled": "yes" },
26+
{ "arg": "traffic-profile", "vals": [ "trafficgen.profile" ], "role": "client", "enabled": "yes" },
27+
{ "arg": "trex-software-mode", "vals": [ "$TPL_SW_MODE" ], "role": "client", "enabled": "yes" },
28+
{ "arg": "trex-mellanox-support", "vals": [ "$TPL_MLXSUP" ], "role": "client", "enabled": "yes" },
29+
{ "arg": "rate-unit", "vals": [ "%" ], "role": "client", "enabled": "yes" },
30+
{ "arg": "min-rate", "vals": [ "1" ], "role": "client", "enabled": "yes" },
31+
{ "arg": "rate", "vals": [ "100" ], "role": "client", "enabled": "yes" },
32+
{ "arg": "latency-rate", "vals": [ "1000" ], "role": "client", "enabled": "yes" },
33+
{ "arg": "one-shot", "vals": [ "0" ], "role": "client", "enabled": "yes" },
34+
{ "arg": "search-runtime", "vals": [ "30" ], "role": "client", "enabled": "yes" },
35+
{ "arg": "validation-runtime", "vals": [ "300" ], "role": "client", "enabled": "yes" },
36+
{ "arg": "stream-mode", "vals": [ "continuous" ], "role": "client", "enabled": "yes" },
37+
{ "arg": "warmup-trial", "vals": [ "ON" ], "role": "client", "enabled": "yes" },
38+
{ "arg": "send-teaching-warmup", "vals": [ "ON" ], "role": "client", "enabled": "yes" },
39+
{ "arg": "teaching-warmup-packet-type", "vals": [ "generic" ], "role": "client", "enabled": "yes" },
40+
{ "arg": "teaching-measurement-packet-type", "vals": [ "generic" ], "role": "client", "enabled": "yes" },
41+
{ "arg": "teaching-warmup-packet-rate", "vals": [ "100" ], "role": "client", "enabled": "yes" },
42+
{ "arg": "teaching-measurement-packet-rate", "vals": [ "100" ], "role": "client", "enabled": "yes" },
43+
{ "arg": "teaching-measurement-interval", "vals": [ "10.0" ], "role": "client", "enabled": "yes" },
44+
{ "arg": "rate-tolerance", "vals": [ "5" ], "role": "client", "enabled": "yes" },
45+
{ "arg": "runtime-tolerance", "vals": [ "5" ], "role": "client", "enabled": "yes" },
46+
{ "arg": "rate-tolerance-failure", "vals": [ "fail" ], "role": "client", "enabled": "yes" },
47+
{ "arg": "max-loss-pct", "vals": [ "0.002" ], "role": "client", "enabled": "yes" },
48+
{ "arg": "disable-flow-cache", "vals": [ "OFF" ], "role": "client", "enabled": "yes" },
49+
{ "arg": "search-granularity", "vals": [ "0.05" ], "role": "client", "enabled": "yes" },
50+
{ "arg": "random-seed", "vals": [ "42" ], "role": "client", "enabled": "yes" },
51+
{ "arg": "disable-upward-search", "vals": [ "disable-upward-search" ], "role": "client", "enabled": "yes" }
2552
]
2653
}
2754
]
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
{
2+
"streams": [
3+
{
4+
"flows": 1024,
5+
"frame_size": 64,
6+
"flow_mods": "function:create_flow_mod_object(use_src_mac_flows=False, use_dst_mac_flows=False, use_src_ip_flows=False, use_dst_ip_flows=True, use_src_port_flows=False, use_dst_port_flows=False, use_protocol_flows=False)",
7+
"rate": 29761904,
8+
"frame_type": "generic",
9+
"protocol": "UDP",
10+
"stream_types": [
11+
"teaching_warmup",
12+
"teaching_measurement",
13+
"measurement"
14+
],
15+
"latency": false,
16+
"traffic_direction": "bidirectional",
17+
"stream_id": "stream1"
18+
},
19+
{
20+
"flows": 1024,
21+
"frame_size": 64,
22+
"flow_mods": "function:create_flow_mod_object(use_src_mac_flows=False, use_dst_mac_flows=False, use_src_ip_flows=False, use_dst_ip_flows=True, use_src_port_flows=False, use_dst_port_flows=False, use_protocol_flows=False)",
23+
"rate": 1000,
24+
"frame_type": "generic",
25+
"protocol": "UDP",
26+
"stream_types": [
27+
"teaching_warmup",
28+
"teaching_measurement",
29+
"measurement"
30+
],
31+
"latency": true,
32+
"latency_only": true,
33+
"traffic_direction": "unidirectional",
34+
"stream_id": "stream2"
35+
}
36+
]
37+
}

0 commit comments

Comments
 (0)