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 3F636A0A0C; Fri, 2 Jul 2021 12:15:40 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AF70B41353; Fri, 2 Jul 2021 12:15:39 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id 23A4140686 for ; Fri, 2 Jul 2021 12:15:38 +0200 (CEST) Received: from [192.168.38.17] (aros.oktetlabs.ru [192.168.38.17]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by shelob.oktetlabs.ru (Postfix) with ESMTPSA id 8CEE87F4FE; Fri, 2 Jul 2021 13:15:37 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 8CEE87F4FE DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=oktetlabs.ru; s=default; t=1625220937; bh=sdQeBaxzno58rp05nW66egiE+0fG0D2uoxEzKzSTJA4=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=x7d3SJpjW4roZ24tn7ZOjpaYGJ0w3SPOORk0Ur1qSzQyYn1AxJK6wcAtIlyVcFCmj FWJ4U4+EldXX9AKlSp+Pg3NulVyB005Q3DfQqqpAusFCb3jB3wzp24fBx8M9413viw ftLLGuPJ9r8XNmAD5bFtNHI2DflXlOd0yflhvv2I= To: Kathleen Capella , Xiaoyun Li Cc: dev@dpdk.org, nd@arm.com, honnappa.nagarahalli@arm.com, dharmik.thakkar@arm.com, Ferruh Yigit , Thomas Monjalon , "Ananyev, Konstantin" , Jerin Jacob Kollanukkaran , Stephen Hemminger References: <20210430213747.41530-1-kathleen.capella@arm.com> From: Andrew Rybchenko Organization: OKTET Labs Message-ID: Date: Fri, 2 Jul 2021 13:15:37 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <20210430213747.41530-1-kathleen.capella@arm.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [RFC 0/1] app/testpmd: add l3fwd mode to testpmd X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" @Xiaoyun could you share your thoughts on it? As far as I remember there is no agreement on the topic. Adding more people in Cc. On 5/1/21 12:37 AM, Kathleen Capella wrote: > Performance of the LPM mode in L3fwd example application is used as an industry > standard to compare between various platforms. > > Unfortunately, L3fwd example application lacks debugging capabilities to > understand the performance bottlenecks and fix them. > > While debugging performance issues we need all the flexibility possible. > Some of the capabilities we have used are: > 1) ability to print hardware and software statistics - xstats, stats at > port/queue level, burst stats to identify any headroom available, > CPU cycles/packet etc > 2) ability to modify all possible configurable parameters for the PMD > as well as the application at run time without recompiling the code. > Some of the parameters we have used are RX/TX queue depths, burst size, > number of receive queues, PMD specific parameters etc. This > configurability at runtime helps to understand and debug L3fwd > performance issues quickly and effectively. > > It is possible to add all these capabilities to L3fwd example application. > However, doing that we will result in L3fwd example application losing > its purpose (of being a sample application). At the same time, testpmd > application has all these capabilities to debug an application. In my opinion > it makes sense to add L3fwd mode to testpmd. > > This patch adds l3fwd mode into testpmd to take advantage of the > existing infrastructure in testpmd. > > I'd like to hear from the community if the structure of this change makes sense, > namely, adding l3fwd as a separate fwd_engine into testpmd. > > This feature is not yet implemeted for SSE or AltiVec. > > Kathleen Capella (1): > app/testpmd: add l3fwd mode to testpmd > > app/test-pmd/config.c | 66 +++++++ > app/test-pmd/l3fwd.c | 356 ++++++++++++++++++++++++++++++++++ > app/test-pmd/l3fwd.h | 143 ++++++++++++++ > app/test-pmd/l3fwd_common.h | 268 +++++++++++++++++++++++++ > app/test-pmd/l3fwd_lpm.h | 107 ++++++++++ > app/test-pmd/l3fwd_lpm_neon.h | 169 ++++++++++++++++ > app/test-pmd/l3fwd_neon.h | 234 ++++++++++++++++++++++ > app/test-pmd/meson.build | 3 +- > app/test-pmd/testpmd.c | 4 +- > app/test-pmd/testpmd.h | 20 ++ > 10 files changed, 1368 insertions(+), 2 deletions(-) > create mode 100644 app/test-pmd/l3fwd.c > create mode 100644 app/test-pmd/l3fwd.h > create mode 100644 app/test-pmd/l3fwd_common.h > create mode 100644 app/test-pmd/l3fwd_lpm.h > create mode 100644 app/test-pmd/l3fwd_lpm_neon.h > create mode 100644 app/test-pmd/l3fwd_neon.h >