From patchwork Mon May 11 11:08:06 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wisam Jaddo X-Patchwork-Id: 70070 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 85287A00C5; Mon, 11 May 2020 13:08:36 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 17E5C1C133; Mon, 11 May 2020 13:08:36 +0200 (CEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2080.outbound.protection.outlook.com [40.107.21.80]) by dpdk.org (Postfix) with ESMTP id 899081BFF0 for ; Mon, 11 May 2020 13:08:35 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E6hPeHf9KoL9So6YXA0qaEfkhh7MPLrVe/X6RveAn+KKO91FFUoF3WIvj3cW1dyJeyFIV2jBy/NAvNh8LO+ifKO7PGL9sD5p+b4SLxRC1S4x3uNlfytbcsUR/BidbDmgam0JiTIYTrH5qtSIdqod0tkHcBL3DelIAOy52tKQBDtNjyizqVW+KNBlpucUVMkgCUhMsxP3i3iWpRBidarUMWGF85jOiOLSZNqxaUkQxvBMb/kicCscGX3KvipjeAy00GYlcxLX4DhhlM31Y+hDCjANKfMWteuKulhAG52Fn+4OBuIXCZEzpFEy0Djbb2R9NO+3Z65KwDyEfE9l/7pagw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LPSj1QIfM23RC2KkryCG7p12rWw4aRyV7iMwe3Te7FA=; b=bn0tN4jEdtgpLm3lFg2YhEyOeBsl2xltL/8OJodjrr1VkqF3x66L6YzAU3U17DyHclSQM6MoJ9NKYslwo2yw3GdVJhFtkPEqDltxbb3xgIIsyxlbOrqXchRcNyhIWq4OmCmZ96kFV+jYdh12rUmiIYLT7MTPRHPxHit12mwriwAA+yO4Ogdd8oFGBvBZnKwQLNVDXYFRnRSqRE4/OI6XFnIuRwUEvAEUOunQkLAuJ8o64xQicD0pd7wHcCckcNxgfLOpcj0Jos0qN49njMZey9pndaPEmWzUXgvUctAPk9AkQbhByfMlRh6ZTl2OyQHEn8igX44l7flxjAZETTSSLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LPSj1QIfM23RC2KkryCG7p12rWw4aRyV7iMwe3Te7FA=; b=L8vR4pMkWCZcRsjR2xJN8hT71wDCA2AMZg2RbY4S9JKYRqxg24kQV4SxdAZItXCTdTWY33DCiBKNhcvRvC4cbmjTuNRMZzMQM0+3VCEq3h+XDYr69/PATqSHuxkE9yNDThwuPM6pNEnMqQyGsmxeqCahdO72+N7kjHnpd3C3nyo= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=mellanox.com; Received: from AM0PR05MB6610.eurprd05.prod.outlook.com (2603:10a6:208:12f::18) by AM0PR05MB5891.eurprd05.prod.outlook.com (2603:10a6:208:133::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.33; Mon, 11 May 2020 11:08:34 +0000 Received: from AM0PR05MB6610.eurprd05.prod.outlook.com ([fe80::900:c0ac:78bd:18fc]) by AM0PR05MB6610.eurprd05.prod.outlook.com ([fe80::900:c0ac:78bd:18fc%6]) with mapi id 15.20.2958.035; Mon, 11 May 2020 11:08:34 +0000 From: Wisam Jaddo To: dev@dpdk.org, jackmin@mellanox.com, thomas@monjalon.net, jerinjacobk@gmail.com, ajit.khaparde@broadcom.com, arybchenko@solarflare.com Date: Mon, 11 May 2020 11:08:06 +0000 Message-Id: <20200511110811.11474-1-wisamm@mellanox.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200506123627.22340-2-wisamm@mellanox.com> References: <20200506123627.22340-2-wisamm@mellanox.com> X-ClientProxiedBy: PR0P264CA0122.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1a::14) To AM0PR05MB6610.eurprd05.prod.outlook.com (2603:10a6:208:12f::18) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from mellanox.com (37.142.13.130) by PR0P264CA0122.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.27 via Frontend Transport; Mon, 11 May 2020 11:08:32 +0000 X-Mailer: git-send-email 2.17.1 X-Originating-IP: [37.142.13.130] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 14b39677-7c65-4da3-ba1e-08d7f59ba51a X-MS-TrafficTypeDiagnostic: AM0PR05MB5891:|AM0PR05MB5891: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1060; X-Forefront-PRVS: 04004D94E2 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XaOdJHaY8LSUMwN+9PKnwmd644wpTlkhMUdhfN2LxPbvP2V4tRhoCiqWefw5W7vKVKCfmo89AqnrsRG3j6l3/erlQgnsasX/D9PhcEhoFXxGXRVug1MNZk8Cp9MIjTw52bRTThI+5rc5WQMnb/+LZVdZfyWov/Dz8SvIuasVYR0wVDPaWMCrRu/wv1DvxBNNRJ5ePR2RiuX/CMd780bNl4tsdIhMzEjLF5g4ONTfcrhAU8lTd+rle4MQ9x5qUzYDN1C78wa8socwMDvVqAFSOx3VLO9qjOVPZrQZWXiIAEVbgo1Bfd4E1iyZ4xOZOHq2Ez3y1bPl8ztqAYNpYJ/az42X9pF1eYCBwHcB0mNRo2hhnTN7LBWwxW9t9OLEGuAHvyiMbUMbJs0hVXAPdJzyc5L6ZRPLcSN8K5IEW/TSu5+b2kNedo6sZCYNAIv7RAGOI/Oam+d1zcW5Jmxjenc5ewsHKneo3EsdAvzy4vydPG3DZ0XDB43gt3e2jASi+NIvsymiyi3spdsiNyygdZoSSg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM0PR05MB6610.eurprd05.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(376002)(136003)(39860400002)(396003)(366004)(346002)(33430700001)(66556008)(36756003)(478600001)(5660300002)(1076003)(33440700001)(316002)(6666004)(8886007)(2906002)(8936002)(55016002)(86362001)(66476007)(8676002)(66946007)(52116002)(26005)(2616005)(956004)(16526019)(186003)(7696005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: sbTJSsbjfYsbnMddILhBB5D5eHgMj3EbGNHpXQNdtvacZDzs6sproPuJ1hVVuvTbEhXdHlVagrhiv1kOtWeMrBJESOIfXZAeNPeu/AzcHc7df1caytWilXt/cxe/12p6nUZMwVtfBIMxmRlpC2Ch6uK0A3G9+4tUWKxbqUraBQ2HAV7yMOHbtIVWVLC4vyN5itHhdxY+CWzY9/jTa5sdB+rlDrSpTWag8BaQnni01iVBNFZGe/jtg0HENa99srCOFtiwVwRnrzfs5Dca0//KOMpaIg1W8vNFNeIzL7YCW8hlIVGJ4ZIelgCBhHYhXYy6DgfgdwfiRAV7NavKa1uy3c1YWiwEtFI2DnMqb9EVGq1DRP89r1ltbxyzKfrcLXKs1PnCDxCnmeAhwUYE+XEAPihf0vYfzvtD7izFNdp/X0UXtuK0N1UGutiF3pq9uxn2FRKDN9Bu8lY1ZJLYHyBcVSt6o8Lq55jxrB6RQh1JnBU= X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 14b39677-7c65-4da3-ba1e-08d7f59ba51a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2020 11:08:34.2388 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /qtg8lYxMXr26+GZAjn5pBBvZLEPSDbBmF8XKlBKshMydIxJexDE0u9ksGMYs+c1ZrundJIAeki3arY4wvkY/A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR05MB5891 Subject: [dpdk-dev] [PATCH v6 0/5] Introduce flow perf application X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add new application to test rte flow performance from: - Insertion rate. - Deletion rate. - Memory consumption. - PPS forward measurement. --- v6: * Move compare vs 0 logic instead of logical not. * Logged errors into stderr. * Remove offload parse on queue level. * Fix documentation and limitations. * Added macro for rss hash value, used in port and rss action configuration. * Remove all design global variable, only control left. * Remove items/action defines for bit map and use rte_types instead. * Addressing comments regard args_parse() v5: * Add app to 20.05 release notes. * Addressing comments. * Fix compilation issue for gcc >= 10. * Fix documentation. * Remove unneeded CFLAGS. * Remove unused includes. * Addressing format comments. * Move hairpin to be option use only. * Use RSS hash IP + TCP in ports and rss action. * Introduce and use new macro for bit flags. v4: * Fix compilation error due to variable set but not used. v3: * Fix passing hairpin queues to hairpin rss action. v2: * reset cpu_time_used every port. * generate different RSS action every flow with different RETA. * Fix in commit log message Wisam Jaddo (5): app/flow-perf: add flow performance skeleton app/flow-perf: add insertion rate calculation app/flow-perf: add deletion rate calculation app/flow-perf: add memory dump to app app/flow-perf: add packet forwarding support MAINTAINERS | 5 + app/Makefile | 1 + app/meson.build | 1 + app/test-flow-perf/Makefile | 26 + app/test-flow-perf/actions_gen.c | 164 ++++ app/test-flow-perf/actions_gen.h | 29 + app/test-flow-perf/config.h | 30 + app/test-flow-perf/flow_gen.c | 145 +++ app/test-flow-perf/flow_gen.h | 37 + app/test-flow-perf/items_gen.c | 277 ++++++ app/test-flow-perf/items_gen.h | 31 + app/test-flow-perf/main.c | 1116 ++++++++++++++++++++++++ app/test-flow-perf/meson.build | 11 + config/common_base | 5 + doc/guides/rel_notes/release_20_05.rst | 10 + doc/guides/tools/flow-perf.rst | 247 ++++++ doc/guides/tools/index.rst | 1 + 17 files changed, 2136 insertions(+) create mode 100644 app/test-flow-perf/Makefile create mode 100644 app/test-flow-perf/actions_gen.c create mode 100644 app/test-flow-perf/actions_gen.h create mode 100644 app/test-flow-perf/config.h create mode 100644 app/test-flow-perf/flow_gen.c create mode 100644 app/test-flow-perf/flow_gen.h create mode 100644 app/test-flow-perf/items_gen.c create mode 100644 app/test-flow-perf/items_gen.h create mode 100644 app/test-flow-perf/main.c create mode 100644 app/test-flow-perf/meson.build create mode 100644 doc/guides/tools/flow-perf.rst