From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 377B7A0A0C; Tue, 3 Aug 2021 16:59:39 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 288CD411A7; Tue, 3 Aug 2021 16:59:39 +0200 (CEST) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mails.dpdk.org (Postfix) with ESMTP id 7FAD540E3C for ; Tue, 3 Aug 2021 16:59:37 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10065"; a="213435945" X-IronPort-AV: E=Sophos;i="5.84,291,1620716400"; d="scan'208";a="213435945" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Aug 2021 07:59:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,291,1620716400"; d="scan'208";a="511317150" Received: from unknown (HELO dpdk-lijuan.sh.intel.com) ([10.67.119.192]) by FMSMGA003.fm.intel.com with ESMTP; 03 Aug 2021 07:59:35 -0700 From: Lijuan Tu To: dts@dpdk.org Cc: Lijuan Tu Date: Wed, 4 Aug 2021 06:49:23 +0800 Message-Id: <1628030966-187545-2-git-send-email-lijuan.tu@intel.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1628030966-187545-1-git-send-email-lijuan.tu@intel.com> References: <1628030966-187545-1-git-send-email-lijuan.tu@intel.com> Subject: [dts] [v1, 2/5] nvgre: remove perf test cases X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" the cases are no longer maintained. Signed-off-by: Lijuan Tu --- test_plans/nvgre_test_plan.rst | 65 ----------------- tests/TestSuite_nvgre.py | 156 ----------------------------------------- 2 files changed, 221 deletions(-) diff --git a/test_plans/nvgre_test_plan.rst b/test_plans/nvgre_test_plan.rst index d9412e1..015182a 100644 --- a/test_plans/nvgre_test_plan.rst +++ b/test_plans/nvgre_test_plan.rst @@ -340,68 +340,3 @@ correct or not. +-----------+------------+------------+---------+----------+------------+------------+-----------+---------------------+-----------+ | Yes | Yes | Ipv6 | Yes | Yes | Yes | Ipv6 (Bad) | Udp | PKT_RX_IPV6_HDR_EXT | None | +-----------+------------+------------+---------+----------+------------+------------+-----------+---------------------+-----------+ - - -Test Case: NVGRE Checksum Offload Performance Benchmarking -========================================================== - -The throughput is measured for each of these cases for NVGRE tx checksum -offload of "all by software", "inner l3 offload by hardware", "inner l4 -offload by hardware", "inner l3&l4 offload by hardware", "outer l3 offload -by hardware", "outer l4 offload by hardware", "outer l3&l4 offload by -hardware", "all by hardware". - -The results are printed in the following table: - -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| Calculate Type | 1S/1C/1T Mpps | % linerate | 1S/1C/2T Mpps | % linerate | 1S/2C/1T Mpps | % linerate | -+================+===============+============+===============+============+===============+============+ -| SOFTWARE ALL | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HW OUTER L3 | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HW OUTER L4 | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HW OUTER L3&L4 | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HW INNER L3 | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HW INNER L4 | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HW INNER L3&L4 | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ -| HARDWARE ALL | | | | | | | -+----------------+---------------+------------+---------------+------------+---------------+------------+ - -Test Case: NVGRE Tunnel filter Performance Benchmarking -======================================================= - -The throughput is measured for different NVGRE tunnel filter types. -Queue single mean there's only one flow and forwarded to the first queue. -Queue multi mean there are two flows and configure to different queues. - -+--------+------------------+--------+--------+------------+ -| Packet | Filter | Queue | Mpps | % linerate | -+========+==================+========+========+============+ -| Normal | None | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | None | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac-ivlan | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac-ivlan-tenid | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac-tenid | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | omac-imac-tenid | Single | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac-ivlan | Multi | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac-ivlan-tenid | Multi | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac-tenid | Multi | | | -+--------+------------------+--------+--------+------------+ -| NVGRE | imac | Multi | | | -+--------+------------------+--------+--------+------------+ diff --git a/tests/TestSuite_nvgre.py b/tests/TestSuite_nvgre.py index 1301819..1b1a50d 100644 --- a/tests/TestSuite_nvgre.py +++ b/tests/TestSuite_nvgre.py @@ -877,162 +877,6 @@ class TestNvgre(TestCase): # check vlan nvgre packet + inner vlan + inner sctp checksum invalid self.nvgre_checksum(outer_vlan=1, inner_l4_invalid=1, inner_l4_type='SCTP') - def test_perf_nvgre_tunnelfilter_performance_2ports(self): - self.result_table_create(self.tunnel_header) - core_list = self.dut.get_core_list('1S/%dC/1T' % (self.tunnel_multiqueue * 2), socket=self.ports_socket) - core_mask = utils.create_mask(core_list) - - for perf_config in self.tunnel_perf: - pkts = [] - config = NvgreTestConfig(self) - config.inner_vlan = self.default_vlan - config.outer_mac_dst = self.dut.get_mac_address(self.dut_port) - # get frame size - config.create_pcap() - frame_size = config.pcap_len() - - # restart testpmd in each performance config - self.eal_para = self.dut.create_eal_parameters(cores="all") - self.dut.send_expect(r'%s %s -- -i --disable-rss --coremask=%s --rxq=4 --txq=4 --portmask=%s' - % (self.path, self.eal_para, core_mask, self.portmask), "testpmd>", 100) - if perf_config['tunnel_filter'] != 'None': - self.dut.send_expect("tunnel_filter add %d %s %s %s %d vxlan %s %d %d" - % (self.dut_port, config.outer_mac_dst, config.inner_mac_dst, config.inner_ip_dst, config.inner_vlan, - perf_config['tunnel_filter'], config.tni, 0), "testpmd>", 10) - - if perf_config['Packet'] == 'Normal': - config.outer_udp_dst = 63 - config.outer_mac_dst = self.dut.get_mac_address(self.dut_port) - config.payload_size = frame_size - HEADER_SIZE['eth'] - HEADER_SIZE['ip'] - HEADER_SIZE['udp'] - - # add default pkt into pkt list - pkt = config.create_pcap() - pkts.append(pkt) - - # add other pkts into pkt list when enable multi receive queues - if perf_config['recvqueue'] == 'Multi': - for queue in range(self.tunnel_multiqueue - 1): - if 'imac' in perf_config['tunnel_filter']: - config.inner_mac_dst = "00:00:20:00:00:0%d" % (queue + 2) - if 'ivlan' in perf_config['tunnel_filter']: - config.inner_vlan = (queue + 2) - if 'tenid' in perf_config['tunnel_filter']: - config.vni = (queue + 2) - - # add tunnel filter the same as pkt - pkt = config.create_pcap() - pkts.append(pkt) - out = self.dut.send_expect("tunnel_filter add %d %s %s %s %d vxlan %s %d %d" - % (self.dut_port, config.outer_mac_dst, config.inner_mac_dst, config.inner_ip_dst, config.inner_vlan, - perf_config['tunnel_filter'], config.vni, (queue + 1)), "testpmd>", 10) - - # save pkt list into pcap file - wrpcap(config.pcap_file, pkts) - self.tester.session.copy_file_to(config.pcap_file) - - # config the flows - tgen_input = [] - tgen_input.append((self.tester.get_local_port(self.dut_port), - self.tester.get_local_port(self.recv_port), - config.pcap_file)) - - self.dut.send_expect("set fwd mac", "testpmd>", 10) - self.dut.send_expect("start", "testpmd>", 10) - - frame_size = config.pcap_len() - wirespeed = self.wirespeed(self.nic, frame_size, 2) - # run traffic generator - _, pps = self.tester.traffic_generator_throughput(tgen_input) - - pps /= 1000000.0 - perf_config['Mpps'] = pps - perf_config['pct'] = pps * 100 / wirespeed - - out = self.dut.send_expect("stop", "testpmd>", 10) - self.dut.send_expect("quit", "# ", 10) - - # verify every queue work fine - if perf_config['recvqueue'] == 'Multi': - for queue in range(self.tunnel_multiqueue): - self.verify("RX Port= 0/Queue= %d -> TX Port= 1/Queue= %d" % (queue, queue) in out, "Queue %d no traffic" % queue) - - table_row = [perf_config['Packet'], perf_config['tunnel_filter'], - perf_config['recvqueue'], perf_config['Mpps'], - perf_config['pct']] - - self.result_table_add(table_row) - - self.result_table_print() - - def test_perf_nvgre_checksum_performance_2ports(self): - config = NvgreTestConfig(self) - config.outer_mac_dst = self.dut.get_mac_address(self.dut_port) - config.pcap_file = "nvgre1.pcap" - config.create_pcap() - config.outer_mac_dst = self.dut.get_mac_address(self.recv_port) - config.pcap_file = "nvgre.pcap" - config.create_pcap() - - # configure flows - tgen_input = [] - tgen_input.append((self.tester.get_local_port(self.dut_port), - self.tester.get_local_port(self.recv_port), - "nvgre.pcap")) - tgen_input.append((self.tester.get_local_port(self.recv_port), - self.tester.get_local_port(self.dut_port), - "nvgre.pcap")) - - all_cores_mask = utils.create_mask(self.dut.get_core_list("all")) - - # socket/core/thread - for test_cycle in self.test_cycles: - core_config = test_cycle['cores'] - - # take care the corelist when enable numa - if '2S' not in core_config: - core_list = self.dut.get_core_list(core_config, - socket=self.ports_socket) - else: - core_list = self.dut.get_core_list(core_config) - - core_mask = utils.create_mask(core_list) - self.eal_para = self.dut.create_eal_parameters(cores="all") - self.dut.send_expect(r'%s %s -- -i --disable-rss --coremask=%s --rxq=4 --txq=4 --portmask=%s' - % (self.path, self.eal_para, core_mask, self.portmask), "testpmd>", 100) - self.dut.send_expect("set fwd csum", "testpmd>", 10) - - # different calculate type - for cal in self.cal_type: - self.dut.send_expect("tx_checksum set %s %d" % (cal['tx_checksum'], self.dut_port), "testpmd>", 10) - self.dut.send_expect("tx_checksum set %s %d" % (cal['tx_checksum'], self.recv_port), "testpmd>", 10) - self.dut.send_expect("start", "testpmd>", 10) - - frame_size = config.pcap_len() - wirespeed = self.wirespeed(self.nic, frame_size, 2) - # run traffic generator - _, pps = self.tester.traffic_generator_throughput(tgen_input) - - pps /= 1000000.0 - test_cycle['Mpps'][cal['Type']] = pps - test_cycle['pct'][cal['Type']] = pps * 100 / wirespeed - - self.dut.send_expect("stop", "testpmd>", 10) - - self.dut.send_expect("quit", "# ", 10) - - self.result_table_create(self.table_header) - - # save the results - for cal in self.cal_type: - table_row = [cal['Type']] - for test_cycle in self.test_cycles: - table_row.append(test_cycle['Mpps'][cal['Type']]) - table_row.append(test_cycle['pct'][cal['Type']]) - - self.result_table_add(table_row) - - self.result_table_print() - def set_up(self): """ Run before each test case. -- 1.8.3.1