a95a4b548e0f98437a6f63c2760e0d4cbccad952
[vswitchperf.git] / conf / 01_testcases.conf
1 # Copyright 2015 Intel Corporation.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #   http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 # This file describes a list of testcases.  Each testcase is described as a
16 # dictionary in a list of dictionaries.
17 #
18 # The dictionary keys, their meanings and available values are:
19 #
20 # "Name": "phy2phy_burst",         # A human-readable string identifying the
21 #                                  # test.
22 # "Traffic Type": "rfc2544",       # One of the supported traffic types.
23 # "Collector": "cpu, memory",      # Comma-separated list of Collectors to
24 #                                  # be activated during this test.
25 # "Deployment": "p2p",             # One of the supported deployment scenarios.
26 # "Description": "Lorem ipsum..."  # Optional. A human-readable string
27 #                                  # describing the test.
28 # "biDirectional": [true|false],   # Specifies if genearted traffic will be
29 #                                  # full-duplex (true) or half-duplex (false)
30 # "MultiStream": 0-65535           # Optional. Defines number of flows simulated
31 #                                  # by traffic generator. Value 0 disables
32 #                                  # MultiStream feature
33 # "Load": dictionary               # Optional. Configures background load
34 #                                  # during testcase execution.
35 #   Descritopn of "Load" dictionary keys, their meanings and available values:
36 #
37 #   "tool": "stress"               # One of the supported load generators.
38 #   "load": 0-100                  # percentage of cores which should be
39 #                                  # utilized by load generator
40 #                                  # e.g. load = 70%, detected cpu cores = 14 =>
41 #                                  # round(14*0.7)=10, i.e. 10 instances of load
42 #                                  # generator will be executed
43 #   "reserved": 0- (Default 0)     # Optional. Defines number of cores reserved
44 #                                  # for vsperf
45 #                                  # e.g. load = 80%, detected cpu cores = 14,
46 #                                  # reserved = 4 => round((14-4)*0.8)=8,
47 #                                  # i.e. 8 load gen. instances will be executed
48 #   "pattern" : "c"                # stress/stress-ng specific; Number of 'c',
49 #                                  # 'm' and 'i' defines ratio between cpu, mem
50 #                                  # and io workers respectively
51 #                                  # e.g. "ccccmmi" => ratio among workers types
52 #                                  # will be 3:2:1, so in case that 12 stress
53 #                                  # instances should be executed, then 6 cpu,
54 #                                  # 4 memory and 2 io workers will be executed
55 #   "load_memory": 0-100           # Optional. Defines percentage of the system
56 #                                  # memory, which should be utilized by memory
57 #                                  # workers (if they are part of "pattern").
58 #                                  # if not specified then default stress(-ng)
59 #                                  # value will be used
60 #   "options": ""                  # Optional. Additional command line options
61 #                                  # to be passed to the load generator.
62 # "Test Modifier": [FrameMod|Other],
63 # "Dependency": [Test_Case_Name |None],
64
65 PERFORMANCE_TESTS = [
66     {
67         "Name": "phy2phy_tput",
68         "Traffic Type": "rfc2544",
69         "Collector": "cpu",
70         "Deployment": "p2p",
71         "biDirectional": "True",
72         "Description": "LTD.Throughput.RFC2544.PacketLossRatio",
73     },
74     {
75         "Name": "back2back",
76         "Traffic Type": "back2back",
77         "Collector": "cpu",
78         "Deployment": "p2p",
79         "biDirectional": "True",
80         "Description": "LTD.Throughput.RFC2544.BackToBackFrames",
81     },
82     {
83         "Name": "phy2phy_tput_mod_vlan",
84         "Traffic Type": "rfc2544",
85         "Collector": "cpu",
86         "Deployment": "p2p",
87         "Frame Modification": "vlan",
88         "biDirectional": "False",
89         "Description": "LTD.Throughput.RFC2544.PacketLossRatioFrameModification"
90     },
91     {
92         "Name": "phy2phy_cont",
93         "Traffic Type": "continuous",
94         "Collector": "cpu",
95         "Deployment": "p2p",
96         "Description": "RFC2544 Phy2Phy Continuous Stream",
97         "biDirectional": "True",
98     },
99     {
100         "Name": "phy2phy_scalability",
101         "Traffic Type": "rfc2544",
102         "Collector": "cpu",
103         "Deployment": "p2p",
104         "biDirectional": "True",
105         "Description": "LTD.Scalability.RFC2544.0PacketLoss",
106         "MultiStream": "8000",
107     },
108     {
109         "Name": "pvp_tput",
110         "Traffic Type": "rfc2544",
111         "Collector": "cpu",
112         "Deployment": "pvp",
113         "Description": "LTD.Throughput.RFC2544.PacketLossRatio",
114         "biDirectional": "True",
115     },
116     {
117         "Name": "pvp_back2back",
118         "Traffic Type": "back2back",
119         "Collector": "cpu",
120         "Deployment": "pvp",
121         "Description": "LTD.Throughput.RFC2544.BackToBackFrames",
122         "biDirectional": "True",
123     },
124     {
125         "Name": "phy2phy_cpu_load",
126         "Traffic Type": "rfc2544",
127         "Collector": "cpu",
128         "Deployment": "p2p",
129         "biDirectional": "True",
130         "Description": "LTD.CPU.RFC2544.0PacketLoss",
131         "Load" : {
132             "tool" : "stress-ng",
133             "load" : 100,
134             "reserved" : 4,
135             "pattern" : "c",
136         }
137     },
138     {
139         "Name": "phy2phy_mem_load",
140         "Traffic Type": "rfc2544",
141         "Collector": "cpu",
142         "Deployment": "p2p",
143         "biDirectional": "True",
144         "Description": "LTD.Memory.RFC2544.0PacketLoss",
145         "Load" : {
146             "tool" : "stress-ng",
147             "load" : 50,
148             "pattern" : "m",
149             "load_memory" : 80,
150         }
151     },
152
153 ]