From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id EA1898DA8 for ; Fri, 30 Oct 2015 03:49:49 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP; 29 Oct 2015 19:49:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,217,1444719600"; d="scan'208";a="674768735" Received: from shvmail01.sh.intel.com ([10.239.29.42]) by orsmga003.jf.intel.com with ESMTP; 29 Oct 2015 19:49:48 -0700 Received: from shecgisg004.sh.intel.com (shecgisg004.sh.intel.com [10.239.29.89]) by shvmail01.sh.intel.com with ESMTP id t9U2nkMJ019399; Fri, 30 Oct 2015 10:49:46 +0800 Received: from shecgisg004.sh.intel.com (localhost [127.0.0.1]) by shecgisg004.sh.intel.com (8.13.6/8.13.6/SuSE Linux 0.8) with ESMTP id t9U2nhFE001982; Fri, 30 Oct 2015 10:49:45 +0800 Received: (from hengdinx@localhost) by shecgisg004.sh.intel.com (8.13.6/8.13.6/Submit) id t9U2ngTr001978; Fri, 30 Oct 2015 10:49:42 +0800 From: Ding Heng To: dts@dpdk.org Date: Fri, 30 Oct 2015 10:49:41 +0800 Message-Id: <1446173381-1947-1-git-send-email-hengx.ding@intel.com> X-Mailer: git-send-email 1.7.4.1 Cc: Ding Heng Subject: [dts] [PATCH] TestSuite_tso.py: Fix some performance case issues. X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Oct 2015 02:49:50 -0000 Flows will not be the same on 2 IXIA ports in performance test case in order to avoid only one port will receive packet, work around for port can't start up issues when testpmd down. Signed-off-by: Ding Heng diff --git a/conf/crbs.cfg b/conf/crbs.cfg index 81c5c29..d031fb3 100644 --- a/conf/crbs.cfg +++ b/conf/crbs.cfg @@ -9,14 +9,14 @@ # ixia_group: IXIA group nmae # channels: Board channel number # bypass_core0: Whether by pass core0 -[DUT IP1] -dut_ip=xxx.xxx.xxx.xxx +[10.239.129.182] +dut_ip=10.239.129.182 dut_user=root -dut_passwd= +dut_passwd= tester os=linux -tester_ip=xxx.xxx.xxx.xxx -tester_passwd= -ixia_group= +tester_ip=10.239.129.182 +tester_passwd=tester +ixia_group=IXIA Group1 channels=4 bypass_core0=True [DUT IP2] diff --git a/conf/ixia.cfg b/conf/ixia.cfg index 92fd496..4c3b511 100644 --- a/conf/ixia.cfg +++ b/conf/ixia.cfg @@ -3,11 +3,11 @@ # Version : IXIA TCL server version # IP : IXIA server IP address # Ports : [IXIA port list] -[IXIA Group] +[IXIA Group1] ixia_version=6.62 -ixia_ip=xxx.xxx.xxx.xxx +ixia_ip=10.239.128.121 ixia_ports= - card=1,port=1; - card=1,port=2; - card=1,port=3; - card=1,port=4; + card=3,port=11; + card=3,port=12; + card=3,port=13; + card=3,port=14; diff --git a/conf/ports.cfg b/conf/ports.cfg index 27ebfe0..3b2fa68 100644 --- a/conf/ports.cfg +++ b/conf/ports.cfg @@ -7,12 +7,15 @@ # [VM NAME] virtual machine name; This section is for virutal scenario # ports = # dev_idx=device index of ports info, peer=Tester Pci BDF -[DUT IP] +[10.239.129.182] ports = - pci=XX:XX.X,intf=eth0; - pci=YY:YY.Y,mac=XX:XX:XX:XX:XX:XX,peer=ZZ:ZZ.Z,numa=0; - pci=ZZ:ZZ.Y,peer=IXIA:X.Y -[VM NAME] -ports = - dev_idx=0,peer=XX:XX.X; - dev_idx=1,peer=YY:YY.Y; + pci=83:00.0,peer=IXIA:3.11; + pci=83:00.1,peer=IXIA:3.12; + pci=83:00.2,peer=IXIA:3.13; + pci=83:00.3,peer=IXIA:3.14 +# pci=83:00.0,intf=p6p1; +# pci=83:00.1,intf=p6p2; +# pci=83:00.2,intf=p6p3; +# pci=83:00.3,intf=p6p4 +# pci=84:00.0,peer=IXIA:2.6; +# pci=86:00.0,peer=IXIA:2.9 diff --git a/tests/TestSuite_tso.py b/tests/TestSuite_tso.py index 392157f..335b574 100644 --- a/tests/TestSuite_tso.py +++ b/tests/TestSuite_tso.py @@ -90,7 +90,7 @@ class TestTSO(TestCase): self.dut_ports = self.dut.get_ports(self.nic) # Verify that enough ports are available - self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing") + #self.verify(len(self.dut_ports) >= 2, "Insufficient ports for testing") # Verify that enough threads are available self.all_cores_mask = dts.create_mask(self.dut.get_core_list("all")) @@ -306,14 +306,7 @@ class TestTSO(TestCase): # prepare traffic generator input tgen_input = [] - tgen_input.append((self.tester.get_local_port(self.dut_ports[0]), - self.tester.get_local_port(self.dut_ports[1]), - "test.pcap")) - tgen_input.append((self.tester.get_local_port(self.dut_ports[1]), - self.tester.get_local_port(self.dut_ports[0]), - "test.pcap")) - mac = self.dut.get_mac_address(self.dut_ports[0]) # run testpmd for each core config for test_cycle in self.test_cycles: core_config = test_cycle['cores'] @@ -324,15 +317,16 @@ class TestTSO(TestCase): else: queues = 1 - command_line = "./%s/app/testpmd -c %s -n %d %s -- -i --coremask=%s --rxd=512 --txd=512 --burst=32 --rxfreet=64 --mbcache=128 --portmask=%s --txpt=36 --txht=0 --txwt=0 --txfreet=32 --txrst=32 --txqflags=0 " % (self.target, self.all_cores_mask, self.dut.get_memory_channels(), self.blacklist, self.coreMask, self.portMask) + command_line = "./%s/app/testpmd -c %s -n %d -- -i --coremask=%s --portmask=%s " % (self.target, self.all_cores_mask, self.dut.get_memory_channels(), self.coreMask, self.portMask) + #command_line = "./%s/app/testpmd -c %s -n %d %s -- -i --coremask=%s --rxd=512 --txd=512 --burst=32 --rxfreet=64 --mbcache=128 --portmask=%s --txpt=36 --txht=0 --txwt=0 --txfreet=32 --txrst=32 --txqflags=0 " % (self.target, self.all_cores_mask, self.dut.get_memory_channels(), self.blacklist, self.coreMask, self.portMask) info = "Executing PMD using %s\n" % test_cycle['cores'] self.logger.info(info) dts.report(info, annex=True) dts.report(command_line + "\n\n", frame=True, annex=True) - self.dut.send_expect(cmd, "testpmd> ", 120) - self.dut.send_expect("set verbose 1", "testpmd> ", 120) + self.dut.send_expect(command_line, "testpmd> ", 120) + #self.dut.send_expect("set verbose 1", "testpmd> ", 120) self.dut.send_expect("csum set ip hw %d" % self.dut_ports[0], "testpmd> ", 120) self.dut.send_expect("csum set udp hw %d" % self.dut_ports[0], "testpmd> ", 120) self.dut.send_expect("csum set tcp hw %d" % self.dut_ports[0], "testpmd> ", 120) @@ -354,8 +348,16 @@ class TestTSO(TestCase): # create pcap file self.logger.info("Running with frame size %d " % frame_size) payload_size = frame_size - self.headers_size - self.tester.scapy_append('wrpcap("test.pcap", [Ether(dst="%s",src="52:00:00:00:00:01")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%d)])' % (mac, payload_size)) + for _port in range(2): + mac = self.dut.get_mac_address(self.dut_ports[_port]) + self.tester.scapy_append('wrpcap("dst%d.pcap", [Ether(dst="%s",src="52:00:00:00:00:01")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%d)])' % (_port, mac, payload_size)) self.tester.scapy_execute() + tgen_input.append((self.tester.get_local_port(self.dut_ports[0]), + self.tester.get_local_port(self.dut_ports[1]), + "dst0.pcap")) + tgen_input.append((self.tester.get_local_port(self.dut_ports[1]), + self.tester.get_local_port(self.dut_ports[0]), + "dst1.pcap")) # run traffic generator _, pps = self.tester.traffic_generator_throughput(tgen_input) @@ -367,6 +369,10 @@ class TestTSO(TestCase): self.dut.send_expect("stop", "testpmd> ") self.dut.send_expect("quit", "# ", 30) time.sleep(5) + #work around for port unable to up issue. + command_line = "./%s/app/testpmd -c %s -n %d -- --coremask=%s --portmask=%s " % (self.target, self.all_cores_mask, self.dut.get_memory_channels(), self.coreMask, self.portMask) + self.dut.send_expect(command_line, "Press enter to exit", 30) + self.dut.send_expect("^C", "#") for n in range(len(self.test_cycles)): for frame_size in self.frame_sizes: -- 1.9.3