diff options
author | Dino Madarang <dinox.madarang@intel.com> | 2017-10-03 01:02:17 +0000 |
---|---|---|
committer | Ross Brattain <ross.b.brattain@intel.com> | 2017-12-16 00:18:27 -0800 |
commit | 9bf492e01dad7309287e8491ec7ac29f43032aed (patch) | |
tree | 852528f5a17b6fa1fef4028afee6eb79fd32c79a /yardstick/benchmark/contexts/standalone/model.py | |
parent | 6cfec77db6b95af5b31b741d513955ee3dfa3bb2 (diff) |
samples: Add generic L3 forwarder tests
A generic throughput test case that can be used as a
stub code for a Linux-based VNF configured as an L3 forwarder.
Supported context:
* Standalone OVSDPDK and SRIOV
* Baremetal
Code changes:
* Allow pmd-cpu-mask and lcore mask for OVS DPDK
* router_vnf.py - configures interface IP addresses and static arp entries
using ip command
* NFVi KPIs
* Allow cputune tag for standalone context to be able to PIN on NUMA 1 cpus
SRIOV Test cases:
* RFC2544 Ethernet framesizes, 128K Flows
* 2,4 and 6 ports
* 2 and 3 vcpus per port
*
OVSDPDK Test cases:
* RFC2544 Ethernet framesizes, 128K Flows
* 2 and 4 ports
* 2 vcpus per port
* 2 PMD threads per port
TODO:
* Documentation
* Add 6 ports tests
References:
* router_vnf.py is based on sample_vnf.py
* tc_*.yaml files are based on acl/vfw test case files
Added unitests
Added get_stats to parse ip -s link
Change-Id: Id1b969d5420dfcab7c1e695acbd2cd1655747efe
Signed-off-by: Dino Simeon Madarang <dinox.madarang@intel.com>
Signed-off-by: Kavindya Deegala <kavindya.s.deegala@intel.com>
Reviewed-by: Alain Jebara <alain.jebara@intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Emma Foley <emma.l.foley@intel.com>
Reviewed-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Reviewed-by: Ross Brattain <ross.b.brattain@intel.com>
Reviewed-by: Edward MacGillivray <edward.s.macgillivray@intel.com>
Signed-off-by: Dhaval Patel <dhaval.r.patel@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Diffstat (limited to 'yardstick/benchmark/contexts/standalone/model.py')
-rw-r--r-- | yardstick/benchmark/contexts/standalone/model.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/yardstick/benchmark/contexts/standalone/model.py b/yardstick/benchmark/contexts/standalone/model.py index a8943c3f6..85ae14b1d 100644 --- a/yardstick/benchmark/contexts/standalone/model.py +++ b/yardstick/benchmark/contexts/standalone/model.py @@ -43,6 +43,7 @@ VM_TEMPLATE = """ <hugepages /> </memoryBacking> <vcpu cpuset='{cpuset}'>{vcpu}</vcpu> + {cputune} <os> <type arch="x86_64" machine="pc-i440fx-utopic">hvm</type> <boot dev="hd" /> @@ -242,6 +243,7 @@ class Libvirt(object): hw_socket = flavor.get('hw_socket', '0') cpuset = Libvirt.pin_vcpu_for_perf(connection, hw_socket) + cputune = extra_spec.get('cputune', '') mac = StandaloneContextHelper.get_mac_address(0x00) image = cls.create_snapshot_qemu(connection, index, flavor.get("images", None)) @@ -252,7 +254,7 @@ class Libvirt(object): memory=memory, vcpu=vcpu, cpu=cpu, numa_cpus=numa_cpus, socket=socket, threads=threads, - vm_image=image, cpuset=cpuset) + vm_image=image, cpuset=cpuset, cputune=cputune) write_file(cfg, vm_xml) @@ -269,6 +271,7 @@ class Libvirt(object): sys_obj = CpuSysCores(connection) soc_cpu = sys_obj.get_core_socket() sys_cpu = int(soc_cpu["cores_per_socket"]) + socket = str(socket) cores = "%s-%s" % (soc_cpu[socket][0], soc_cpu[socket][sys_cpu - 1]) if int(soc_cpu["thread_per_core"]) > 1: threads = "%s-%s" % (soc_cpu[socket][sys_cpu], soc_cpu[socket][-1]) |