diff options
author | Sridhar K. N. Rao <sridhar.rao@spirent.com> | 2017-10-05 09:29:35 +0530 |
---|---|---|
committer | Sridhar K. N. Rao <sridhar.rao@spirent.com> | 2017-11-03 19:40:48 +0530 |
commit | 485ac777fd9cded7c145917bfcbe701276f3c855 (patch) | |
tree | c78b8dd7d339f5e738f9b579a39d30f5c8da0f12 /conf | |
parent | 0549aa1f1a694899fec3b16b44230b5c60d2fa29 (diff) |
load_gen: Supporting loading of load_gen via loader.
Currently all tools are loaded via loader utility, except load_gen.
Load_gens were loaded directly through component_factory.
This patch adds support to load load_gens through loader utility.
The changes are as follows:
1. Configuration changes:The common.conf include configuration of
directory. testcases.conf includes changes to load configuration,
where tool is no more part of the load-configuration. The
custom.conf has configuration of LOADGEN to be used - this configuration
replaces the earlier 'tool' configuration parameter.
2. loader_utility_changes: In loader.py, loadgen_loader is
defined, which is used in new get_loadgen function.
3. component_factory changes: in create_loadgen, similar
to other tools, the function just retuns the object of loadgen_class.
4. Renaming of Dummy load_gen: Loader fails to load properly a dummy
loadgen due to name-clash with dummy in pkt_gen. To avoid this name clash
dummy is renamed to dummyloadgen.
5. testcase changes: create_loadgen is now called with output of
loader's get_loadgen_class.
6. Fixed Pylint Errors and extra-space at the end.
7. Included CLI options support for --loadgen and --list-loadgens.
Thanks to Martin K.
8. Added the missing loadgen parameter in testcases.conf.
9. Fixed the missing comma error.
10. Added CI change in build-vsperf.sh
11. Fixed configuration reading in stress/stress.py
JIRA: VSPERF-533
Change-Id: I3fbb259618825a12fef55320a748a4f02509190b
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Diffstat (limited to 'conf')
-rwxr-xr-x | conf/01_testcases.conf | 9 | ||||
-rw-r--r-- | conf/07_loadgen.conf | 21 |
2 files changed, 27 insertions, 3 deletions
diff --git a/conf/01_testcases.conf b/conf/01_testcases.conf index df582df9..bd5ba9eb 100755 --- a/conf/01_testcases.conf +++ b/conf/01_testcases.conf @@ -27,9 +27,12 @@ # # ip_port. # "Load": dictionary # Optional. Configures background load # # during testcase execution. +# # The tool used to generate load is +# # defined by LOADGEN configuration. +# # Default setting of Dummy can be found in +# # 07_loadgen.conf. # Description of "Load" dictionary keys, their meanings and available values: # -# "tool": "stress" # One of the supported load generators. # "load": 0-100 # percentage of cores which should be # # utilized by load generator # # e.g. load = 70%, detected cpu cores = 14 => @@ -331,12 +334,12 @@ PERFORMANCE_TESTS = [ "Deployment": "p2p", "Description": "LTD.CPU.RFC2544.0PacketLoss", "Load" : { - "tool" : "stress-ng", "load" : 100, "reserved" : 4, "pattern" : "c", }, "Parameters" : { + "LOADGEN" : "StressNg", "TRAFFIC" : { "traffic_type" : "rfc2544_throughput", }, @@ -347,12 +350,12 @@ PERFORMANCE_TESTS = [ "Deployment": "p2p", "Description": "LTD.Memory.RFC2544.0PacketLoss", "Load" : { - "tool" : "stress-ng", "load" : 50, "pattern" : "m", "load_memory" : 80, }, "Parameters" : { + "LOADGEN" : "StressNg", "TRAFFIC" : { "traffic_type" : "rfc2544_throughput", }, diff --git a/conf/07_loadgen.conf b/conf/07_loadgen.conf new file mode 100644 index 00000000..e7349a5d --- /dev/null +++ b/conf/07_loadgen.conf @@ -0,0 +1,21 @@ +# Copyright 2015 Intel Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +LOADGEN_DIR = os.path.join(ROOT_DIR, 'tools/load_gen') + +###################################################### +# LOADGEN tool: one of DummyLoadGen, Stress, StressNg +###################################################### +LOADGEN = "DummyLoadGen" +###################################################### |