Tweak TRex cores and RDMA pps limit 62/26262/18
authorVratko Polak <vrpolak@cisco.com>
Tue, 31 Mar 2020 18:10:46 +0000 (20:10 +0200)
committerVratko Polak <vrpolak@cisco.com>
Wed, 1 Apr 2020 14:30:09 +0000 (14:30 +0000)
The previous values lead to duration stretching,
which affects MRR results (making receive rate bigger than it really is).

+ Move timestamp for starting of traffic,
  the previous position was too conservative.

Change-Id: Ie983f0d3eacf56d57caa551d1b7fbb87ece6c158
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
resources/libraries/python/Constants.py
resources/tools/trex/trex_stateless_profile.py

index 42a8b41..46993b2 100644 (file)
@@ -194,7 +194,7 @@ class Constants:
     TREX_LIMIT_MEMORY = get_int_from_env(u"TREX_LIMIT_MEMORY", 4096)
 
     # TRex number of cores
-    TREX_CORE_COUNT = get_int_from_env(u"TREX_CORE_COUNT", 7)
+    TREX_CORE_COUNT = get_int_from_env(u"TREX_CORE_COUNT", 15)
 
     # Trex force start regardles ports state
     TREX_SEND_FORCE = get_pessimistic_bool_from_env(u"TREX_SEND_FORCE")
@@ -258,6 +258,8 @@ class Constants:
     }
 
     # Mapping from NIC name to its pps limit.
+    # The values are unidirectional, assuming the test
+    # uses two ports on the same NIC.
     NIC_NAME_TO_PPS_LIMIT = {
         u"Cisco-VIC-1227": 14880952,
         u"Cisco-VIC-1385": 18750000,
@@ -266,7 +268,9 @@ class Constants:
         u"Intel-X710": 14880952,
         u"Intel-XL710": 18750000,
         u"Intel-XXV710": 18750000,
-        u"Mellanox-CX556A": 60000000, # 148809523,
+        # The Mellanox card is able to do more, but the current TRex version
+        # shows non-negligible duration stretching, depending on cores used.
+        u"Mellanox-CX556A": 47000000,  # 148809523,
         u"Amazon-Nitro-50G": 1500000,
         u"virtual": 14880952,
     }
index edb0b8d..a41e4e8 100755 (executable)
@@ -194,8 +194,8 @@ def simple_burst(
         lost_b = 0
 
         # Choose rate and start traffic:
-        time_start = time.time()
         client.start(ports=ports, mult=rate, duration=duration, force=force)
+        time_start = time.time()
 
         if async_start:
             # For async stop, we need to export the current snapshot.