summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Simonart <simonartxavier@gmail.com>2022-01-09 19:35:22 +0000
committerXavier Simonart <simonartxavier@gmail.com>2022-02-06 21:43:02 +0000
commit517b97bfccdbf5948ec2fa88edc1b13831823074 (patch)
tree87d8f13529caeadb6bf66c25b56ef02ea85ab683
parente29c35c3bbbbd32754b0b2dc9570ea1195358c61 (diff)
Added sleep_time optional configuration in rapid
This can for instance be useful to ensure that inter-iteration time is higher than SUT switch max_idle time. Signed-off-by: Xavier Simonart <simonartxavier@gmail.com> Change-Id: I3a94b022f4d38e0c97d5cbd343b36a9a3ed5fd9e
-rw-r--r--VNFs/DPPD-PROX/helper-scripts/rapid/rapid_defaults.py1
-rw-r--r--VNFs/DPPD-PROX/helper-scripts/rapid/rapid_flowsizetest.py3
-rw-r--r--VNFs/DPPD-PROX/helper-scripts/rapid/rapid_parser.py6
-rw-r--r--VNFs/DPPD-PROX/helper-scripts/rapid/rapid_test.py3
-rwxr-xr-xVNFs/DPPD-PROX/helper-scripts/rapid/runrapid.py3
5 files changed, 13 insertions, 3 deletions
diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_defaults.py b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_defaults.py
index f45b4dcf..b56fbe1d 100644
--- a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_defaults.py
+++ b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_defaults.py
@@ -31,5 +31,6 @@ class RapidDefaults(object):
'configonly' : False, # If True, the system will upload all the necessary config fiels to the VMs, but not start PROX and the actual testing
'rundir' : '/opt/rapid', # Directory where to find the tools in the machines running PROX
'resultsdir' : '.', # Directory where to store log files
+ 'sleep_time' : 2, # Sleep time between two loop iteration. Minimum is 2 seconds. Might be useful to let SUT clean caches
'lat_percentile' : 0.99
}
diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_flowsizetest.py b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_flowsizetest.py
index 2f121a52..0a1f3748 100644
--- a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_flowsizetest.py
+++ b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_flowsizetest.py
@@ -32,12 +32,13 @@ class FlowSizeTest(RapidTest):
Class to manage the flowsizetesting
"""
def __init__(self, test_param, lat_percentile, runtime, testname,
- environment_file, gen_machine, sut_machine, background_machines):
+ environment_file, gen_machine, sut_machine, background_machines, sleep_time):
super().__init__(test_param, runtime, testname, environment_file)
self.gen_machine = gen_machine
self.sut_machine = sut_machine
self.background_machines = background_machines
self.test['lat_percentile'] = lat_percentile
+ self.test['sleep_time'] = sleep_time
if self.test['test'] == 'TST009test':
# This test implements some of the testing as defined in
# https://docbox.etsi.org/ISG/NFV/open/Publications_pdf/Specs-Reports/NFV-TST%20009v3.2.1%20-%20GS%20-%20NFVI_Benchmarks.pdf
diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_parser.py b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_parser.py
index 81a1c45a..445aed4b 100644
--- a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_parser.py
+++ b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_parser.py
@@ -46,6 +46,12 @@ class RapidConfigParser(object):
test_params['lat_percentile'] = 0.99
RapidLog.info('Latency percentile at {:.0f}%'.format(
test_params['lat_percentile']*100))
+ if testconfig.has_option('TestParameters', 'sleep_time'):
+ test_params['sleep_time'] = int(testconfig.get('TestParameters', 'sleep_time'))
+ if test_params['sleep_time'] < 2:
+ test_params['sleep_time'] = 2
+ else:
+ test_params['sleep_time'] = 2
if testconfig.has_option('TestParameters', 'ipv6'):
test_params['ipv6'] = testconfig.getboolean('TestParameters','ipv6')
diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_test.py b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_test.py
index 76b3bf0b..6badfb45 100644
--- a/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_test.py
+++ b/VNFs/DPPD-PROX/helper-scripts/rapid/rapid_test.py
@@ -185,11 +185,12 @@ class RapidTest(object):
def run_iteration(self, requested_duration, flow_number, size, speed):
BUCKET_SIZE_EXP = self.gen_machine.bucket_size_exp
+ sleep_time = self.test['sleep_time']
LAT_PERCENTILE = self.test['lat_percentile']
iteration_data= {}
time_loop_data= {}
iteration_data['r'] = 0;
- sleep_time = 2
+
while (iteration_data['r'] < self.test['maxr']):
self.gen_machine.start_latency_cores()
time.sleep(sleep_time)
diff --git a/VNFs/DPPD-PROX/helper-scripts/rapid/runrapid.py b/VNFs/DPPD-PROX/helper-scripts/rapid/runrapid.py
index e4055cc5..7a1c8eb5 100755
--- a/VNFs/DPPD-PROX/helper-scripts/rapid/runrapid.py
+++ b/VNFs/DPPD-PROX/helper-scripts/rapid/runrapid.py
@@ -114,7 +114,8 @@ class RapidTestManager(object):
test_params['TestName'],
test_params['environment_file'],
gen_machine,
- sut_machine, background_machines)
+ sut_machine, background_machines,
+ test_params['sleep_time'])
elif test_param['test'] in ['corestatstest']:
test = CoreStatsTest(test_param,
test_params['runtime'],