diff options
Diffstat (limited to 'ubuntu/ovs-odp-dpdk-server-multinode.yaml')
-rw-r--r-- | ubuntu/ovs-odp-dpdk-server-multinode.yaml | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/ubuntu/ovs-odp-dpdk-server-multinode.yaml b/ubuntu/ovs-odp-dpdk-server-multinode.yaml new file mode 100644 index 0000000..a5f4851 --- /dev/null +++ b/ubuntu/ovs-odp-dpdk-server-multinode.yaml @@ -0,0 +1,100 @@ +metadata: + format: Lava-Test Test Definition 1.0 + name: ovs-odp-server-multinode + description: "OVS on top of ODP-DPDK - this runs as part of a multinode setup and tests + the performance of odp-ovs. This initial effort covers simple PHY-to-PHY + forwarding in a setup with two machines connected back to back trough two + network interfaces. The other machine will usually run netmap-pkt-gen-multinode + to generate packets and measure the rate of packets forwarded by odp-ovs." + maintainer: + - ciprian.barbu@linaro.org + os: + - ubuntu + scope: + - functional + - performance + devices: + - x86 + +params: + LINUX_HEADERS_DEB: "/linux-headers.deb" + ODP_OVS_GIT: "git://git.linaro.org/lng/odp-ovs.git" + ODP_OVS_REV: "odp-v0" + NIC_PATTERN: "82599" + +install: + deps: + - git + - binutils + - gcc + - make + - autoconf + - libtool + - automake + - patch + - pciutils + - python-numpy + - libpcap-dev + - openssl + - libssl-dev + - curl + - uuid-runtime + - bzip2 + - lshw + git-repos: + - url: git://git.linaro.org/lng/check-odp + steps: + - echo 'RUNNING depmod' + - depmod + - echo 'CLONING odp-ovs' + - git clone $ODP_OVS_GIT odp-ovs + - cd odp-ovs + - git checkout $ODP_OVS_REV + - ifconfig -a + - lshw -class network + +run: + steps: + - set -x + - echo 'COMPILING ODP-DPDK' + - cd check-odp + - lava-test-case compile-odp-dpdk --shell CLEANUP=0 ./build-dpdk.sh + - echo 'COMPILING ODP-OVS' + - cd .. + - cd odp-ovs + - ./boot.sh + - lava-test-case configure-odp-ovs --shell ./configure --with-odp=../check-odp/new-build --with-odp-debug=yes --prefix=/usr + - lava-test-case make-odp-ovs --shell make -j 4 + - make install + - cd .. + - echo 'CONFIGURE hugetlbfs' + - lava-test-case set-1024-hugetlbfs --shell 'echo 1024 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages' + - mkdir -p /mnt/huge + - lava-test-case mount-hugetlbfs --shell mount -t hugetlbfs nodev /mnt/huge + - sleep 5 + - echo 'PREPARE DPDK' + - lava-test-case insert-uio --shell modprobe uio + - lava-test-case insert-igb-uio --shell insmod check-odp/DPDK/x86_64-native-linuxapp-gcc/kmod/igb_uio.ko + - echo 'BIND DPDK NICs' + - lava-test-case dpdk-nic-status-before --shell check-odp/DPDK/tools/dpdk_nic_bind.py --status + - lava-test-case dpdk-nic-bind --shell ./common/scripts/odp-ovs/ovs-odp-dpdk-nic-bind-$NIC_PATTERN.sh check-odp/DPDK + - lava-test-case dpdk-nic-status-after --shell check-odp/DPDK/tools/dpdk_nic_bind.py --status + - sleep 5 + - echo 'STARTING ODP-OVS' + - lava-test-case start-odp-ovs --shell 'ODP_PLATFORM_PARAMS="-n 3 -- -p 3" odp-ovs/debian/openvswitch-switch.init start' + - echo 'ENABLING ODP mode' + - lava-test-case enable-odp-mode --shell 'ovs-vsctl set Open_vSwitch . other_config:odp=true' + - echo 'ADDING bridge' + - lava-test-case add-bridge --shell 'ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev' + - sleep 3 + - echo 'ADDING ports' + - lava-test-case add-port0 --shell 'ovs-vsctl add-port br0 odp:0 -- set Interface odp:0 type=odp' + - lava-test-case add-port1 --shell 'ovs-vsctl add-port br0 odp:1 -- set Interface odp:1 type=odp' + - sleep 3 + - echo 'ADDING flows' + - lava-test-case show-flows --shell ovs-ofctl show br0 + - lava-test-case add-flow1 --shell 'ovs-ofctl add-flow br0 in_port=1,action=output:2' + - lava-test-case add-flow2 --shell 'ovs-ofctl add-flow br0 in_port=2,action=output:1' + - lava-sync ready + - lava-sync l2fwd-done + - lava-test-case del-br --shell 'ovs-vsctl del-br br0' |