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 DA25BA0A0F; Wed, 30 Jun 2021 05:42:52 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 79FCF40DF6; Wed, 30 Jun 2021 05:42:52 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id 4A5314003C for ; Wed, 30 Jun 2021 05:42:50 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10030"; a="187967496" X-IronPort-AV: E=Sophos;i="5.83,310,1616482800"; d="scan'208";a="187967496" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jun 2021 20:42:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,310,1616482800"; d="scan'208";a="641554546" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga006.fm.intel.com with ESMTP; 29 Jun 2021 20:42:47 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Tue, 29 Jun 2021 20:42:47 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Tue, 29 Jun 2021 20:42:47 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.173) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Tue, 29 Jun 2021 20:42:47 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f1B1fG37GcibQvxyAMk+yTELFZqn+HWV/gO7BgSwd2S6n1VIB/B70jir/TNRJeS509u8/KsbQZH6J0GRzUfzzu2Oy18Hi2UfK6bFiMwcilCcTkjPkHCEquAyswHc/xT9xVDjG225lyQs3JHBfUz41Hxegz9/KyRHU0rWJxssP8wRe7ouH/ca3Ss9w5sfaquVfJSJ1kOqajKSmOxFyuu1yzv0sXcTmV46yW2HhEr/Su/c3RQsXBZGwRbFk1f8K0PnKe3k8vY1yhR0au2jlffxT6kGfR0M1Be+FOidSPvp3QWzcrpxkF3uU0TYQgC4njlC1AZ3IPn6g9RDXiU/LXOKKg== 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=Wc5yMx8rUkIysevefWPCEA4YljjGZNwyDFpfs1ifvF4=; b=kosfhvvoq4NRp9NXqBgGKjGLV4tkUL/7JwAKzK6y66gUlNd+IKNU2Oo+zFDEh++J+NG9X2TfWsMSCOlubeLovIyFgMYguA4s6eWVZ/zJnWlLc9eGHg/E/CkfkMzgLMKdTrLz1TMG2vucUVqbc7AMqJBI+8nC/ZmV8sOXjfSNMIrhko3soWePaqscSkqIapPzQCovQzVlJdqO04C5r8j9HoFgFMMSJs7npCci6N7KPkHBJtaH9BhMLp2cbV6rVXdSALZCr4bD4XPEO4UlY7vZhPG5zgWd4994CK/oOWyz89Tx8I3pn2ipaRuF06RQK3uuWliDGT93S+9NHez5Fhon6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Wc5yMx8rUkIysevefWPCEA4YljjGZNwyDFpfs1ifvF4=; b=aBcQiym8nGcxLdG6W5TpI2lFdn0yqMkZINg9wGKPtA+HLcodZyUZefV8mPvPzMPbpRA8Q5TX+h9WnsB/PtcsnBV6tVtHkkyYYY09EmzLp6T+rZ8g+tN6KyUsl2sWBndYzEECwNLBN4Au9NCwIBW82QqKK9cY+d2qGhIK+slrHYc= Received: from MN2PR11MB3807.namprd11.prod.outlook.com (2603:10b6:208:f0::24) by MN2PR11MB4031.namprd11.prod.outlook.com (2603:10b6:208:150::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4287.21; Wed, 30 Jun 2021 03:42:45 +0000 Received: from MN2PR11MB3807.namprd11.prod.outlook.com ([fe80::55a3:215a:f054:6b52]) by MN2PR11MB3807.namprd11.prod.outlook.com ([fe80::55a3:215a:f054:6b52%5]) with mapi id 15.20.4264.026; Wed, 30 Jun 2021 03:42:45 +0000 From: "Xing, Beilei" To: Feifei Wang CC: "dev@dpdk.org" , "nd@arm.com" , Ruifeng Wang Thread-Topic: [PATCH v2 1/2] net/i40e: improve performance for scalar Tx Thread-Index: AQHXbVRLbyfouaL9uUmCPEA858/8masr5LCA Date: Wed, 30 Jun 2021 03:42:45 +0000 Message-ID: References: <20210630020415.95411-1-feifei.wang2@arm.com> <20210630020415.95411-2-feifei.wang2@arm.com> In-Reply-To: <20210630020415.95411-2-feifei.wang2@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.46.52] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bf298b5b-9a26-4b43-17ff-08d93b791fb0 x-ms-traffictypediagnostic: MN2PR11MB4031: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4941; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PgDiDibN5Gyk2IG/SJs+LjhYPm0UJbE9T3tD2G+B0FOvsu64nXcLwhN93ouAYIbTSHEd/5F9GHVIeyOeqAEFxC6DlKvU5d7FWLPFbPEYgqRNt1cURYz+9nFxBm1jS9dnDVtSzhc0q3FJkDkAKnAHqw7IR66OplkkFk15SNBBHleExKa0YSoiEqA+NKFLP9k7Ltfr6lm8pDKqGGa3vWely0bUbVHCEn9r+7uzHEQxqwbmTWFi5zNEsVd9AUDEpZkBAqgV5DIbZPF+F4dO0PayPf/QaqH54breFAPddEhoTAX90t4M0bdOjW+sdvCeyblf7kHqg7YRo697R8r5khZuWaZxRhDGF/hukpKOQzrWZG9jtyleCUlT/KjJeXYZsJDlhnnACHuLhzMHQlZ/HN0Tvvc2MtJfggC8H2p0r16qHw/9SSDzEDH6vrx/kpF9gWOVHmg0iBaWcNncCib6UQZ0jkJGSGbl16BYIVbE26U9EDFyc2dl67LrdZ+TVrp0hEEzRioOgMcqRajKqIu0Anr3IXeCoXBW7xEi1uwHkeTmCdrLQFSuqypYm55PhYhh90ZBXqnuvSJHN0IWHSwY9mRMxaa+JUhfIwla/NM4h7RMoNZX9jpJqRRxthTge0VoEm2FwwB5M55cm5BRrqR6uhxhtG3gVXmG3GB8JuYm4NVMwuAEVSxJGUc+jtIqwrOUSobj/s6qvL17WuvaiN3cxOZasApmKhZYlHBRU2ORgjCFlHM= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB3807.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(346002)(39860400002)(396003)(136003)(376002)(366004)(54906003)(55016002)(316002)(7696005)(9686003)(6506007)(53546011)(52536014)(5660300002)(66946007)(6916009)(76116006)(64756008)(66556008)(66446008)(66476007)(8676002)(2906002)(71200400001)(26005)(86362001)(478600001)(186003)(38100700002)(4326008)(83380400001)(122000001)(8936002)(33656002)(414714003)(473944003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?sAjueT0fmnZzLqxDvJemsh5ME0kKydkn9yfQtwSqx4xhKGihSajOsr0Zs8mY?= =?us-ascii?Q?H5IAhhUdHlGX1Jpnax0A/iP5iYaQz0/KKLnF7lQLrJ11fk1Zy+F3o74YNMEz?= =?us-ascii?Q?bM7EUzoHtAvjzD2INI16O5gAAtH2zX6gfubFrjrYzSy7+4ErYsns8W0pdy6M?= =?us-ascii?Q?zfcL/2SZLwL31naohJIvXBcFCDF9160IagvtyKWLPdozQ8QGkyHtIYaApWsK?= =?us-ascii?Q?ZoMD/lNFRSF3D0sIZl51LKzBM0NLzyhATnXWM5Rfapov3RKrr6jmwnhZ8ZHG?= =?us-ascii?Q?UVmxIS/6hHs/2Ql5KZNnWHjLQuQWAMuGFVgAJAnlIgJmV3Wy4VY0ckgpbre0?= =?us-ascii?Q?0W5GytSTITzxiv08WUn3XuRdaatJ4jqNBGrDojF3GMt4qBkjeQl+cYLDA+ID?= =?us-ascii?Q?0MGN6Ot6RrNg02VcrpDu5FexzNJXyAn2TZHyPXkdN9N0Pe0UyyIcvWdL9lfF?= =?us-ascii?Q?5ui/MaWiwUfWguj/OQWfOldqKUXKoT3Yyv6Tg9Db4p2LXHD5+f4BLhYYnJ38?= =?us-ascii?Q?lUXldYBm/Yr+m6bk6DRfZc6GB4ufHKt335E9+LBZKTbdaK2KJ633liKFPZbc?= =?us-ascii?Q?vfMfi91BuxEHrwSQaaklXQ2YeMZi6eidfLQsNeZW1V4WRyrdjUpw5ps5j/lE?= =?us-ascii?Q?dN3J1fPMCQFpvJ4iPTSm+lFJei9s7fCZ5duS4JZs2sRkTnxpBChQwA8Z2DbF?= =?us-ascii?Q?lN28GR0eJZCi7CiMtNFJyPsPB0Es0nPgHYK9yDLZcGTVPYAIq1mdLXHsLcs7?= =?us-ascii?Q?zKWHunuqTKVpxFQ5DtYqe9cLX3Z4oP3uNmndOjvCuNwMlH92fJSBYBvaIooX?= =?us-ascii?Q?cVnvaxthYXgQOkuz1Ms9qOoW7cJi4lPS7884OQR3O4ummGdKnAe3KHeFDFXq?= =?us-ascii?Q?qK9zHKaEIr1MOh15iBrZpAxq7T5zUAQD6zNiJgh2G5iD/dPuitNynFSw/Q6J?= =?us-ascii?Q?lN/E98Q/zRYUTpQjjzJbz5Z6Opx0LI9NnvKDllPJS04u0cTocX1II1RaEybS?= =?us-ascii?Q?KTgkEgKjHnKrVICtpX0AQ5HuBAR7Ksz31XTPcYAzoiZaty6Nrqpk3rjdW8bR?= =?us-ascii?Q?iJRbBO6Vf7Lczwag9hODq6pyKu8YPtGEr8xLf/kS1AEjKwoMBpR0szMmYTtF?= =?us-ascii?Q?WXlsf86+fz+Q9bYj34eCgCBVdE/PkIl/u2AjVzTatE/ic1AehnWjTQ1/qLbn?= =?us-ascii?Q?20nL22LU8gCP8NjpvdFRDaQuB+jGmRBMIcmuOb0TNexhtdyZmUkPQrHRmrXN?= =?us-ascii?Q?NpwRi4YdyqeuvJn+Opkqz/8v+0CAe1fjt0nfnmy4136cIWvLWKwSGAITj/yp?= =?us-ascii?Q?3jU=3D?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR11MB3807.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bf298b5b-9a26-4b43-17ff-08d93b791fb0 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jun 2021 03:42:45.6982 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: QTC2WdyV20HoYhzruxvGeK4BvqY7l1abr4ybMDARgGv4kiyCYqjq6TojnHa4K/J8h7spumvsfXsFVijHejgC6A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4031 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v2 1/2] net/i40e: improve performance for scalar Tx 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" > -----Original Message----- > From: Feifei Wang > Sent: Wednesday, June 30, 2021 10:04 AM > To: Xing, Beilei > Cc: dev@dpdk.org; nd@arm.com; Feifei Wang ; > Ruifeng Wang > Subject: [PATCH v2 1/2] net/i40e: improve performance for scalar Tx >=20 > For i40e scalar Tx path, if implement FAST_FREE_MBUF mode, it means per- > queue all mbufs come from the same mempool and have refcnt =3D 1. >=20 > Thus we can use bulk free of the buffers when mbuf fast free mode is > enabled. >=20 > Following are the test results with this patch: >=20 > MRR L3FWD Test: > two ports & bi-directional flows & one core RX API: > i40e_recv_pkts_bulk_alloc TX API: i40e_xmit_pkts_simple ring_descs_size = =3D > 1024; Ring_I40E_TX_MAX_FREE_SZ =3D 64; tx_rs_thresh =3D > I40E_DEFAULT_TX_RSBIT_THRESH =3D 32; tx_free_thresh =3D > I40E_DEFAULT_TX_FREE_THRESH =3D 32; >=20 > For scalar path in arm platform with default 'tx_rs_thresh': > In n1sdp, performance is improved by 7.9%; In thunderx2, performance is > improved by 7.6%. >=20 > For scalar path in x86 platform with default 'tx_rs_thresh': > performance is improved by 4.7%. >=20 > Suggested-by: Ruifeng Wang > Signed-off-by: Feifei Wang > Reviewed-by: Ruifeng Wang > --- > drivers/net/i40e/i40e_rxtx.c | 26 ++++++++++++++++++++++---- > 1 file changed, 22 insertions(+), 4 deletions(-) >=20 > diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c = index > 6c58decece..8c72391cde 100644 > --- a/drivers/net/i40e/i40e_rxtx.c > +++ b/drivers/net/i40e/i40e_rxtx.c > @@ -1294,7 +1294,11 @@ static __rte_always_inline int > i40e_tx_free_bufs(struct i40e_tx_queue *txq) { > struct i40e_tx_entry *txep; > - uint16_t i; > + int n =3D txq->tx_rs_thresh; Thanks for the patch, just little comment, can we use 'tx_rs_thresh' to rep= lace 'n' to make it more readable? > + uint16_t i =3D 0, j =3D 0; > + struct rte_mbuf *free[RTE_I40E_TX_MAX_FREE_BUF_SZ]; > + const int32_t k =3D RTE_ALIGN_FLOOR(n, > RTE_I40E_TX_MAX_FREE_BUF_SZ); > + const int32_t m =3D n % RTE_I40E_TX_MAX_FREE_BUF_SZ; >=20 > if ((txq->tx_ring[txq->tx_next_dd].cmd_type_offset_bsz & > rte_cpu_to_le_64(I40E_TXD_QW1_DTYPE_MASK)) !=3D > @@ -1307,9 +1311,23 @@ i40e_tx_free_bufs(struct i40e_tx_queue *txq) > rte_prefetch0((txep + i)->mbuf); >=20 > if (txq->offloads & DEV_TX_OFFLOAD_MBUF_FAST_FREE) { > - for (i =3D 0; i < txq->tx_rs_thresh; ++i, ++txep) { > - rte_mempool_put(txep->mbuf->pool, txep->mbuf); > - txep->mbuf =3D NULL; > + if (k) { > + for (j =3D 0; j !=3D k; j +=3D RTE_I40E_TX_MAX_FREE_BUF_SZ) > { > + for (i =3D 0; i < RTE_I40E_TX_MAX_FREE_BUF_SZ; > ++i, ++txep) { > + free[i] =3D txep->mbuf; > + txep->mbuf =3D NULL; > + } > + rte_mempool_put_bulk(free[0]->pool, (void > **)free, > + > RTE_I40E_TX_MAX_FREE_BUF_SZ); > + } > + } > + > + if (m) { > + for (i =3D 0; i < m; ++i, ++txep) { > + free[i] =3D txep->mbuf; > + txep->mbuf =3D NULL; > + } > + rte_mempool_put_bulk(free[0]->pool, (void **)free, > m); > } > } else { > for (i =3D 0; i < txq->tx_rs_thresh; ++i, ++txep) { > -- > 2.25.1