From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0063.outbound.protection.outlook.com [104.47.33.63]) by dpdk.org (Postfix) with ESMTP id 723CB25E5 for ; Tue, 12 Sep 2017 07:52:08 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=27sI+4cRysU8vo3h7m6LD+tXhnVYNjrzL+BUlHH0Anw=; b=YCAZWMxzRJLkw5pY89o9+mDHslH7XMUbF1Kv+wlN3rdYT4Phji0r7T8NRKW9/msGL1bATkTmtApAfNHSdbWB1UOBkqP/sb8mBqoMfLquM/lbzMXxBYFwuVwD/VNdjLJ6KNUL+wEl5z87kRAMF+ScNJXDzRUJBZKTAsngDPVbwEs= Received: from jerin (14.140.2.178) by SN2PR07MB2525.namprd07.prod.outlook.com (10.167.14.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10; Tue, 12 Sep 2017 05:52:02 +0000 Date: Tue, 12 Sep 2017 11:21:39 +0530 From: Jerin Jacob To: Shahaf Shuler Cc: "Ananyev, Konstantin" , Stephen Hemminger , Thomas Monjalon , "dev@dpdk.org" , "Zhang, Helin" , "Wu, Jingjing" Message-ID: <20170912055137.GA24921@jerin> References: <20170910104827.11da9230@xeon-e3> <20170911062119.GA9342@jerin> <20170911080621.GA15867@jerin> <20170911090543.GA9965@jerin> <2601191342CEEE43887BDE71AB9772584F2497DC@irsmsx105.ger.corp.intel.com> <20170912040107.GA8081@jerin> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.0 (2017-09-02) X-Originating-IP: [14.140.2.178] X-ClientProxiedBy: BM1PR01CA0087.INDPRD01.PROD.OUTLOOK.COM (10.174.208.155) To SN2PR07MB2525.namprd07.prod.outlook.com (10.167.14.153) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 37ad390a-22b3-43cf-09c7-08d4f9a26643 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SN2PR07MB2525; X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2525; 3:ui12A7fOdLIbHEtnMtlYWD7zPe09DY7UXYVELumTFV2On/mYbGxMmoGH0YWY1bdA+m6keq6g0jGJEjHtAHQtg02FQPUIbF2b5QfZcmKfGEwyCG3NDqD7uZFfaR9fT//xSAIw/w8CTQHXAy5ed9M/2Nehq/w4dESIonQdyxZzd8D248TK/gGN04R/0s3i2h1EE9g3+u5R5VCPZWdyEQbsiEreU6L0lKPUe6CaAHv3mGKimUnztl4JtVJ1GTVtGUYB; 25:8rMIZMUugkXerLTVCr/itxVfWM93O4jP1XEp9vtTNYo7rI7X+xxjLhO9ae19zFj0ANNeE7iLXP16Vn4ie94DzHPsLSD8bmvVkvkaOLcX5JMO7HDxAG3qUDQv3JPWkhsv11IFl2ImF0VGIIUZEI2fq9PGOu66d+icYSPY2m0tCHJJ/u2sNXQNUsUca+v48DYE6KkXEPbIY9D4vgOQ8/MX4sbJgbOW3nQ0GJN03ZsOW6krWTK5GzaZ4IELXamR10sSTebPqZiusH9fsOio4MK9Lzigrsv+eO6FgtLJ/FcuyR1rhDh6FxaWBkVoepkwVXfE/XHoGoAz9YISOJ4bPk5uiA==; 31:eLycvWkD9efrSWf3DpHkydce6xrpLbtCprt4yvlmMgXLCBGi0mVW9NdEz8u23DzFV8mDvgutWHSfACWZhjL1NbXiKtlxfkAvhVlCYWYPfNSGherYnMECN92xXtfx21Qwasf/b2TajmsTzxxjhKKsYEB3P9uQJ6Szi5ZuExXL8IUlpPOw7LxDfJexlP5sq2OUN6iUoopNepNWd60nelu2Pm44Kgw0kJp52dc0dth3U6E= X-MS-TrafficTypeDiagnostic: SN2PR07MB2525: X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2525; 20:e6FgodK6yY/dk7w7Y58i+JGNAaZqZiLBkNGlnOad69uHpkF8w3vN5xAcvcV+fLGoildv/zdXbnClXEr0PRjz/y3JxKYf+XScKr1JB8f4uMiMGfDojZO9AiPlGg7q3fN0nfIpUB4RMJzZMrInNHe+Glmlb8QctB8RlLQE8X7DhRPoq0p3Tl+GWQE555jcTR6YKSUq675cUVzz+QAv+3e7j/Sdo2AXt3C77kqKnxbIbuUG9FSvTuBzYK8Yl5OtyMSGZ7aSsXJ8VumeWKJ2r/kE1FRP2v0qCAcKe1KbAEXIGA/Ya+0Ndsvtm0I+WxOyo08yPwR/eSszL4ZlPPTg/009Zl4x83oLpQINEXIW+kYHciXlQu691NyHAd+BqJrvQDub1uEYOODylAESN2c2m/ziB0dqRRqTvnMRWZ/j2dDzl05iGvATsp3bwmv8kxi9R7x+8+pIyp9NQw4kQleVAkFY18Hj87mQEzNkjNFDPOZdZ0nZDBTtVDG5WmTSVtdt/F+mrWtYWPeCevwwq+SDKNtDY1aIlYR0jJw4MxqYwziJ3ggGLcPNjchWq+fBnSK2nPptLYovNSf3qOlOJrHwopvz5Md5CGROPFWs33ClGi7ckY0= X-Exchange-Antispam-Report-Test: UriScan:(158342451672863)(228905959029699); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(10201501046)(3002001)(100000703101)(100105400095)(6041248)(20161123562025)(20161123560025)(20161123555025)(20161123558100)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN2PR07MB2525; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN2PR07MB2525; X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2525; 4:8bHQxaqQ45W7kFtcOzIjwc2+DDp+X5tnZ2sDgxfKxyyYJ3g2qcBM2FrtklqpVJXvmcU952OopPwL/3P6mwZDMozI4ksle/7kzAyG0ki1qtQJgvWQqH6UiG9MlLtben1E/S3B8Wkx7jCRrZTeF/HG8hjx3F4rdKEMuZk/1gdUExxiFCj/hbJaHl3/Z7TcjNlPhInH7gl0tyzFBVur47c+7wUIlDuIzNNf1aiRtTYjogVeaKCy22Ot/qKBZqHIDTSu8ruzolcRO0iYbM+gTQY2Ug4M85ZG9ighpImx4WZx2+lEqC/UYD/UQSzSMBKIugnmntbV50pRzU9dObWyRQUQLw== X-Forefront-PRVS: 042857DBB5 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(189002)(13464003)(199003)(377454003)(6496005)(8676002)(5009440100003)(478600001)(3846002)(8936002)(1076002)(305945005)(4326008)(42882006)(83506001)(55016002)(6916009)(2950100002)(2906002)(6666003)(72206003)(23726003)(81166006)(110136004)(53936002)(47776003)(68736007)(7736002)(81156014)(6246003)(33656002)(33716001)(9686003)(5660300001)(6116002)(42186005)(66066001)(54356999)(189998001)(76176999)(25786009)(54906002)(93886005)(4001350100001)(101416001)(106356001)(50986999)(50466002)(105586002)(229853002)(97736004)(316002)(110426004)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN2PR07MB2525; H:jerin; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.JacobKollanukkaran@cavium.com; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN2PR07MB2525; 23:0g6p/cGIvohNJ5pOXI+zjH/3owN5u08YTofqQ013y?= =?us-ascii?Q?np0rT2jDeykQqrZbLw2/a59THBZUXjM9SX+eWAZMG/p8ScorWZ9j+4qCYcCo?= =?us-ascii?Q?1HWpVTg2gkrVWLh4lvrYZZ8/PKjtCh2yTGaZ8Pkk3L+qnI9Qk1EBlHw39frW?= =?us-ascii?Q?SQW48S0zaeNcPMrbCpDNqOMEZ5DgFl7WyiXW3ngr9t7ezFSo7KC0lvFiTF1K?= =?us-ascii?Q?Xva+mKyy7VYKfHk0bcF+pXOTH7iM7IMFbhhpYBjTKeLRzlNpNeEBLOk4BhX2?= =?us-ascii?Q?KV302LSD7OtskjNPskFuXxJhA59LWyibnqJGRJkrFkgHco/cSiitrj/tl4OE?= =?us-ascii?Q?t+ZFh/bYaR7FE3zfFmFQZeOzk8VgemcJ4zaz1OZ6tRcRJlHzugwxpzdlVwqC?= =?us-ascii?Q?jE+UsUpopn7FZEoPfO5lExvdRe0WwtPxJHAJBf/yTHPDy/WHDZjRsiTRToWr?= =?us-ascii?Q?0AE3e1XosQ4g2yV16pBwMkiBTckpseiJI2vENuV8C9/ynh2phl8Xj7cHjQ3l?= =?us-ascii?Q?Sv/7r126Smpm3YYe41Woe68fzVylD81jP5qW8+Jl5w7o5Ml6dJv58OsRdnbP?= =?us-ascii?Q?r6/9/SUf0sK8ECqwn/na54WiaCKpC3R/hoElCmWBet3SkCzEo3UmOjfiBHC4?= =?us-ascii?Q?P+9xSCJDz10eW9OufJRtEWVj8iJC7Z0MONDC8mL2aZ2/HtBnOtX4RP2wOzK8?= =?us-ascii?Q?cgFCGoCgU12Vv4U2HUiq3IstO06Vvrw1HA2zkyXcv+WR/cVUJo7ytaygx+Qh?= =?us-ascii?Q?JyHIn9X8v5fTOFPWn11YSJQo3pBir3sxGG0ego5tocJ0ngvvlKd0fnyqzwng?= =?us-ascii?Q?JciDk2H4Jp+ViUKzwjnZDR2hMVRoB2wepaqW//nNx6WklENV6sDiSDrpcX9A?= =?us-ascii?Q?HuARI6+q9Ui6OpCgDWDI3z+4a/G3C6PE7P/q2qWrUT9hgHo4LuDjbGMUgGAk?= =?us-ascii?Q?3IRzUX0kAnsrhDUjteJ6L4yIzdGHDtjlyF5eSVNg6F39USxVz/nZkqP4tvhz?= =?us-ascii?Q?sY6G+JOTGXUlyfEB0olImCzIi7rzZn6f9McoAhJo/gMFP3WkjSHcMe+/giGq?= =?us-ascii?Q?Oa3NA/TMFq/5iDP+vmjakJpUab1KE5CQRM+kkv/e0DdRoowALccBT2Fcz1J8?= =?us-ascii?Q?vFLKlom3b8XGYJTnUKw4ElgKNhobcsMXZm3jYtIBXYzhIFP+xUrX48sTdigw?= =?us-ascii?Q?59CGgIGuDKbWStl/CH0hFZC3dNlehlza/RxoVzwbL5D8kQp3C2KzWb0ZgMaC?= =?us-ascii?Q?vUbNxFFaZ1hPVOZXvv5m1d8CAhWy7hUrccgNDZXzAe7ECfsFT1m1mjiJj1zT?= =?us-ascii?Q?kccjLDTHZZVF91/ovZ/X3Y=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN2PR07MB2525; 6:q0k9OfYAx1knRXDgluimwpflBmmUy3htgn0hYEDlQoVrFDuTgVL41IhRDAbnvnBN7o2F7CZQChFZKaqAstzmHCPCiC9k67uPtz25PmoaXs90/Hm2PPuPxIePAwk4i5tdB0T5DUl8BenlqFa4JnCxDfWc3Toq8AowN9Wzemm/G2nQmtWvGzZrg9XAEWbJjXkwboOosN6ukc1TzQGRrZuQQCtUMdMeDQ2lrbg9I2Y+n0coHEsSokplIpW/F+AJku7wvtuTnwvIprukTAeUSF+eUaKvqEVJrKnzCc/YypOrKrqfLF1aPaWtQqg6Rn09wLX2rNoQIAW1DG9bjhAYT5d52Q==; 5:PmUlvRIcnGrRR91Gk5G8JfKgifpdVvB2XeEfrFtTp66TESRRKv3DlSYIYATkNhKDGWMU2vu+HaV7HC3x6vhrduzs+R4JtNT1wKVQ4TBAEshTN+T+OoNlaj6FfHqnep3cF860Bu3HFJMJrvvyPhfqag==; 24:2q8RX1oFZl8A1D7PWD2CEVYfYO5NF7p68SychuVPzMnXCuzfNfZwATOHQB8qDpf00tLYLRYtAAECiuyS8HFmLAb7zuzaGD80L1vWaTDucrI=; 7:KTNfzyHiZDnpSVMs91xXQzBV3aTxnYwGEp+SGdTD+oUpojQjXTWU3DutkHVZ++sR25kH4F/WXds52OcbB7ats3eer4/HPOKGoMv+L7vcwF6aVu986ANz0y/1RguivV/yFfhXQI0TnHxEOzNqjnRd5DiLYKoakksmnnx1uSnX4BjN0uvvU1cvF4DTVlgrFtSAVxiPej2JdGzHkeak5Zrbf3LI502EzWV189hNY07htnY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2017 05:52:02.7306 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN2PR07MB2525 Subject: Re: [dpdk-dev] [PATCH v2 2/2] ethdev: introduce Tx queue offloads API 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: , X-List-Received-Date: Tue, 12 Sep 2017 05:52:08 -0000 -----Original Message----- > Date: Tue, 12 Sep 2017 05:25:42 +0000 > From: Shahaf Shuler > To: Jerin Jacob , "Ananyev, Konstantin" > > CC: Stephen Hemminger , Thomas Monjalon > , "dev@dpdk.org" , "Zhang, Helin" > , "Wu, Jingjing" > Subject: RE: [dpdk-dev] [PATCH v2 2/2] ethdev: introduce Tx queue offloads > API > > Tuesday, September 12, 2017 7:01 AM, Jerin Jacob: > > Yes, only when ETH_TXQ_FLAGS_NOMULTMEMP and > > ETH_TXQ_FLAGS_NOREFCOUNT selected at tx queue configuration. > > > > > > > > So literally, yes it is not a TX HW offload, though I understand your > > > intention to have such possibility - it might help to save some cycles. > > > > It not a few cycles. We could see ~24% drop on per core(with 64B) with > > testpmd and l3fwd on some SoCs. It is not very specific to nicvf HW, The > > problem is with limited cache hierarchy in very low end arm64 machines. > > For TX buffer recycling case, it need to touch the mbuf again to find out the > > associated mempool to free. It is fine if application demands it but not all the > > application demands it. > > > > We have two category of arm64 machines, The high end machine where > > cache hierarchy similar x86 server machine. The low end ones with very > > limited cache resources. Unfortunately, we need to have the same binary on > > both machines. > > > > > > > Wonder would some new driver specific function would help in that case? > > > nicvf_txq_pool_setup(portid, queueid, struct rte_mempool *txpool, > > > uint32_t flags); or so? > > > > It is possible, but how do we make such change in testpmd, l3fwd or ipsec- > > gw in tree application which does need only NOMULTIMEMP & > > NOREFCOUNT. > > > > If there is concern about making it Tx queue level it is fine. We can move > > from queue level to port level or global level. > > IMO, Application should express in some form that it wants only > > NOMULTIMEMP & NOREFCOUNT and thats is the case for l3fwd and ipsec- > > gw > > > > I understand the use case, and the fact those flags improve the performance on low-end ARM CPUs. > IMO those flags cannot be on queue/port level. They must be global. Where should we have it as global(in terms of API)? And why it can not be at port level? > > Even though the use-case is generic the nicvf PMD is the only one which do such optimization. > So am suggesting again - why not expose it as a PMD specific parameter? Why to make it as PMD specific? if application can express it though normative DPDK APIs. > > - The application can express it wants such optimization. > - It is global > > Currently it does not seems there is high demand for such flags from other PMDs. If such demand will raise, we can discuss again on how to expose it properly. It is not PMD specific. It is all about where it runs? it will applicable for any PMD that runs low end hardwares where it need SW based Tx buffer recycling(The NPU is different story as it has HW assisted mempool manager). What we are loosing by running DPDK effectively on low end hardware with such "on demand" runtime configuration though DPDK normative API. > > > > >