From: Lijuan Tu <lijuan.tu@intel.com>
To: dts@dpdk.org
Cc: Lijuan Tu <lijuan.tu@intel.com>
Subject: [dts] [v2, 2/5] nvgre: remove perf test cases
Date: Wed, 4 Aug 2021 22:41:52 +0800 [thread overview]
Message-ID: <1628088115-756-3-git-send-email-lijuan.tu@intel.com> (raw)
In-Reply-To: <1628088115-756-1-git-send-email-lijuan.tu@intel.com>
the cases are no longer maintained.
Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
---
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
next prev parent reply other threads:[~2021-08-04 6:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-04 14:41 [dts] [v2, 0/5] remove some run-down cases Lijuan Tu
2021-08-04 14:41 ` [dts] [v2, 1/5] generic_filter: remove perf test case Lijuan Tu
2021-08-04 14:41 ` Lijuan Tu [this message]
2021-08-04 14:41 ` [dts] [v2, 3/5] vm_power_manager: remove perf test cases Lijuan Tu
2021-08-04 8:14 ` Pattan, Reshma
2021-08-04 14:41 ` [dts] [v2, 4/5] vxlan_sample: remove perf test case Lijuan Tu
2021-08-04 14:41 ` [dts] [v2, 5/5] remove cloud_filter as it is no longer maintained Lijuan Tu
2021-08-10 6:01 ` [dts] [v2, 0/5] remove some run-down cases Tu, Lijuan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1628088115-756-3-git-send-email-lijuan.tu@intel.com \
--to=lijuan.tu@intel.com \
--cc=dts@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).