From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0048.outbound.protection.outlook.com [104.47.41.48]) by dpdk.org (Postfix) with ESMTP id 3CE3C9E7 for ; Tue, 7 Feb 2017 07:58:24 +0100 (CET) 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=By0RkPZr7SMKO2aA5amwhJycDjR8C8uvDvdFXUS3tiY=; b=iWPst+eNdUrt4fKVIt/tEWym0dKHeH2re+hgjoOTrAEkpITzc+eJl3vlAi1SkfXZ2hC54ncvoOCoM7HjirdR3f32ejn9/TFOaZuLKySnFbAVhHPd6bVBdP0GhhQR1Vu1a4EVD/3KhPJ/QCLNw0p7etYhIERHV4mUOSkw6G7aZVw= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain (111.93.218.67) by CY1PR0701MB1728.namprd07.prod.outlook.com (10.163.21.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16; Tue, 7 Feb 2017 06:58:20 +0000 Date: Tue, 7 Feb 2017 12:28:02 +0530 From: Jerin Jacob To: "Van Haaren, Harry" CC: "dev@dpdk.org" , "Richardson, Bruce" Message-ID: <20170207065800.GB12563@localhost.localdomain> References: <1484580885-148524-1-git-send-email-harry.van.haaren@intel.com> <1485879273-86228-1-git-send-email-harry.van.haaren@intel.com> <1485879273-86228-8-git-send-email-harry.van.haaren@intel.com> <20170206092509.GF25242@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.7.1 (2016-10-04) X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: BM1PR01CA0061.INDPRD01.PROD.OUTLOOK.COM (10.163.199.33) To CY1PR0701MB1728.namprd07.prod.outlook.com (10.163.21.142) X-MS-Office365-Filtering-Correlation-Id: d1ad2ca4-a092-4e15-b70b-08d44f26b417 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:CY1PR0701MB1728; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1728; 3:yRh5RUomTnP897PI0CWUElD9cDNfsADb3p5qumCozOZUFkRXGGEAoV0QTVkPqdICPQE7vD8Og4J4Uwf6Yvb1/JyseC8PldiTvAq+q/0fLoI+5B2rqS42ay93oKOIx9oaYCtWrMDL76zvNIM5cKQIFOvVAqOVk1Fr2gWptO8MnQ3xRiGUg9+e96NKjQoEqHHf2I51122fMYofZwsCtQGCNLP5JBnDcNyZHkkQrr0nvfls6fRgTyszs742ht5sM6TIlqR+lslnA7+SS9ZkQ7eTxA==; 25:tmcXUDW6T79/jKoF+GG9V71OZgJWR6g3CuiABaupHuMwPN5Ob+QYnGLre4wWmCSLh/rhxi2GPPywbYNLPwom9Ok8f/zQTrfZQ3+dk7bWhuliSeuo3xLBpq0zu1k18XU/lAVXR+FKwDBc3njJ8x/9gbAWMxTMmnX180zcpxMAqfb70BfS0ZGEKGwSuTKfQX7OokljKsZGVs5ajFndaIO7TPWjtfldWL0UzQU9XbkGrVAUtGs4/yZu3yuYctXuObB+GlhL86OHlrk8vqhBi/Xs2UY/DxZilorOESfHApoepHBiAmka9vtyTSqWgp+q4PcuM0/73vp1BE+m4Z6ITh6X95vYI5XlcabwyOb6cnXRyUWHdmrJipjOZd6Dv5j+3gKDZxZq7qcO8oE60c+My0OmmAurULrEN1JPiRZl2s8lAvkLu5mSP08vZ3Chw6Kslsk4N13tjVmAmXDeGpF8HO6FmA== X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1728; 31:V1cIWnOfHZYY6/sbhTUwUSKd3dwJ7EaU3sCrjvrW2TrZ73Tvt88y9+jdOLajwbqi/StNJfxOhlAHQHfmOb140RKLneucN3985vN3ndp/XybACgmJ8ky554UONf2Fjt8AOKyfxQIh91PtB0Y7qXwQR3zZKOd4ci3+EcX49TkfnlqJDCsVRRUWamhMKyHFzSt4Qghy3I9aOatETA6zV/NJWM4S7+3p4tCO065JIxYT5boFFSazrRpf1AGGyACax6+zlB7TQdeGhgSXne9/+FHT9A==; 20:60oiS06QwzsQTfIS1fS39+JwKckPVComxl5iUmGTIyM0VpdLqkA95wmVxG5Fk37y1GT19kDPyl9VUZJghh7DO9X7z4AMwc2TaC3jC1kzb66hPItzSRgqYFl387IZ/SB/c5P5Or6f5Gt73zdQQQsAgdyiLQXimRrXScuCBTYtNSnw1NLGSFtCiYWlGyuRBHkbKD6DnKyp9iQLh6l2zYen9wm5nL5+QzPkDQ7ji6PMlGo3mCMkReLP/Vv1ybMSRMyu2lyC+9sN2+/Bl90krteYUEmgmkeMoW8cOZsrjSgPmg/b1F267AsDZWhwuHv8/4UQXp07QJJ3Di1mkDvBwOCjnRX6wT9SRT7LuZBxeEIYwBwQ9KpfMCqw8zKQQkFAFqDqKuH60/sfaKOfXuPD3dn20GtHBsVI+73bZ9yFmOuEaO8Ec1EKkZRymPBmsJ6/s8LgfgLfJUqLawyOf/LNN9YkR/5dmPVLVnuiNEFl1ll+PDV1g+vMpwoFWQxDI+B5Ry8KLYSjqrWZdx1l8W8egkO1K80G9xckvo6a5m+qW2U0vFvKIRVhHkXj7PIfkRrnTyjMCeU/YkhWqMjcoHj/YE45lr2OCoqxLsR4k46bgMlnguA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(20170203043)(10201501046)(3002001)(6041248)(20161123558025)(20161123562025)(20161123560025)(20161123555025)(20161123564025)(6072148); SRVR:CY1PR0701MB1728; BCL:0; PCL:0; RULEID:; SRVR:CY1PR0701MB1728; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1728; 4:byDjkgGSbyViPX3ybD5aYOQo1iU5lIVZh0xmgOs1lAPjMKotGgmuqPienAbxLgTPvjagiK8c7CLcgsZRevFCRfzDM8q/QG0eONA9/KG62xatZvfXH6Trhj8qYTDzVQkpbh8QoDUuYHsoDBEwFvqrtwmJ/x7wYfMR4hTxOI3sOsCoI8HDdbyUoruQJ6/pW9bDrjO7hg/aOuXT3JZH+jXk6ytXGO9HJmhAwFJnW8EPlYe+r1kU6MK5joLcdsYRwLvK/ajMolblkGbKPHXEbSF2K7dcfUSmpjUOEIFFoDFOscmuBk4PG9hodUoBs2Hli1B13LUOdvCZHt3q/iVByc0kUxN9HbURhksbsFBvfwQj6YCSmAJ1SLGBs0o1F2F7oSTiCVlY0IQc6wQNly85oD2oVCnOXJeG/sc0r3Y0EyZ9C/oDS7wHvaQ/90vKzQxHo+iQoLNMScuaZFW1k/mj/+gtvRBPeIwHkmc5EiUepIcc0mabvc/7fwr/p/LI0QLiFX6jXBX2ydqkNXhjv2w6M/KFglnDgOUOJdeLL9Y0lnIZJGDuX+GQCHKJO2Zti0ifiYf1CXImHtVHwt8Ksduj2WfOW7WjUM0+5VL/hCkHjysjCz9WlyrD+ic5PbTURy9vJ91v/3NQlRO5yqNKgsIR/VpRSRi97kiYrepDECfThmViA/s= X-Forefront-PRVS: 0211965D06 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(39450400003)(24454002)(189002)(199003)(377454003)(13464003)(229853002)(6246003)(50986999)(6506006)(101416001)(76176999)(97736004)(106356001)(9686003)(105586002)(54356999)(54906002)(7736002)(25786008)(305945005)(55016002)(33656002)(5009440100003)(42186005)(50466002)(110136004)(66066001)(8676002)(47776003)(81156014)(61506002)(46406003)(81166006)(4001350100001)(92566002)(4326007)(68736007)(2906002)(38730400002)(6666003)(6916009)(2950100002)(42882006)(6116002)(23726003)(3846002)(5660300001)(93886004)(189998001)(83506001)(53936002)(1076002)(97756001)(7099028)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0701MB1728; H:localhost.localdomain; 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) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR0701MB1728; 23:FGp8yguVtX81cKdYV8UkZ7xSXDp7JG+bVfmXFS5?= =?us-ascii?Q?i/9jodws/orcF0elJCXMS7u87R9NOB1/MshFWwI3j9JIAjVy+A8vHFLekU6f?= =?us-ascii?Q?XhGMq6RYcK4MrV9daRa8VcRfS4LbVVEnzbUGdxS2C9qAIe7wagsgpvV5luXo?= =?us-ascii?Q?uI91Wd0t2HH4lZnGl9p+JZtidf7yJUwzk2C8EUqcuozDHklP1ESWv3ZXsjsq?= =?us-ascii?Q?a4BuAZvMuq3JVisjsCOcJohgmhyEUBPR9YrowAIV2zhVPO1c8Xu2wfi7bjjD?= =?us-ascii?Q?IdH0Dx98ERaX16Idyu7Vd/CJvBWSVBX0t+ebtfoLilOsymib8NB7Uaw58sd8?= =?us-ascii?Q?7hZ6bsin17LrFcajAjhCeGdx8er1KUeXlMvNnGzsMEycwJ5DI5dcRKJK9AsK?= =?us-ascii?Q?+eWWxGibBLtT6rJN9cb8el8awxNXF8vuYBl8/pFvS9bKy+1y2qXrY2agowsU?= =?us-ascii?Q?yXxX7+leR5UKVU1T9rccgnGWV4SALwl5+yAZRli311cNDAI//VKYnZmSZauR?= =?us-ascii?Q?+FO6UJSFkCVyrekkxKfoudrBaVPevMYMhBRtw1ABoqVYQZ8HqGyUqnC7et9/?= =?us-ascii?Q?CDy/Qnk3tTgOvvXxGsvLfRmoFBQxc9CX5baanPRryOJ9izelgoN+eioqtIpG?= =?us-ascii?Q?qRU17WKuLY2E+y9nKrGQRiRs1VObg7W7Np9wreuWcUbFb6nTxdQ7Tteio6Kb?= =?us-ascii?Q?mmCFG5wdxZCI4jH0nfGRVsiSeBjwxGqogStmK6ioXVRK6Mk4wr5jd9YcOXel?= =?us-ascii?Q?MxuwpTJjWT7gbggmBEwTs4uDbYnx/+8LgK3i2ZOou0J7P26oygrTf3dIa6gm?= =?us-ascii?Q?0ZQKGufhLkTjtd84Rs8Lth2+CQWtYR+JjMXWjt4WFm8SLjD1AOuAvLvnEfhw?= =?us-ascii?Q?2C0cw/yemwQJa8Fko+bWxIudtnhfU61ZHAAghvYZKaQC4j7A2Isj8ACWpBuo?= =?us-ascii?Q?IvpsfOzXV9iP/s2Z8k/dfrMna5k4l7D054IE1TxH7asNCIZwFlOJ6QmsuxA3?= =?us-ascii?Q?RTWQtVYtBNjNAVp2QkPCs5ynI2T+yLcXLK8QBA6YRo55BfU/65Q1rAndeo4a?= =?us-ascii?Q?vsPdMb9M5BuRtv3pb1kDSkOzgE4gu0b5ccYCdI+ITDKcM7plsDhkJBvfOB8x?= =?us-ascii?Q?jTtn6srjHiBKofUbgV3vpeeBeN6f93SeFz5hjpAZ6+YERzSJ1ieRMO7Lusp4?= =?us-ascii?Q?NJxxyha+Pu4e1BZVKQrx4C6G7sngFxj6AH3zKnO4jDwmfn+d50bOi+uVsjAu?= =?us-ascii?Q?qj48AZOLOalRdL+J05mMBfkIl2wWFC9HPA4Ut5iCT8tnhOfxu4rCQNzkIu+F?= =?us-ascii?Q?UYPZxe+ytGfrJGuCbovJ6bMd3/K3GIK4x9szTtMNYK726tLjHvdXtUshjGoQ?= =?us-ascii?Q?o+/bBdDiSQxnEka8bh3BSzXKZyRuDBl8iCYTMsGpNIPbM3VQ2csF65sMtoKx?= =?us-ascii?Q?w0+YpRPZKvw=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1728; 6:VH7P/IbokMe7T3xDe0gwDVkupy/4P/CdeLH5zzhIBwZi3RlRcRrZsF/3r/zxixRHzuKQ+wMB2Yt6+GSpb11E/cnnUgFFd0IXsJr9W8bodNbmLGwRqPpXetA1GC709vm8laDHTfsiseKh2p73wLN7V3cZ+KYZ2v+pC2m+HsknU676hzXsO5Doe4RTZt4zQvLigTFffSn/4C0Pd4S1c9mTML+N/YGU8PjrVavFaHCGYut51KTjV05zwqjlo/Rq+X8MdsCnl1MpHt7/R39UZqKy8/bYPLMiI/KWUug0q/SCW6LImY9VPQCn8KIBirsHGtF0/Lx2XwjRDCvEn1bWqBOCf1Oq/42jKf0byrrCBADm6HmW3TP764ozfzSoOrqlfUJMhHIJIY8Mf4VbkJ2P3s/x+A==; 5:7m/UjBffiBcOPm6Qhu1hPqxJCKZCXJEMdJedtdCK0rSx7IypEJUbRARbjCVPMX6o/BjrKwfpU9bInPR4avGkM+o3v48R9+At+Q7YoPDlP6G1yDrPRRy9MlAVUc5RMtknemJ2CxZ6cazE4Y9ZUkXXqw==; 24:QuaVy8ajO1wjrGTUZpMcWlKrrAm5WYDdNotnaNYJiaDKe74nbCI7E2CJmiqJevAQbFWH3VmaIkQHaLgXF8Sn5olqKJI3yzwBWG9pfrE+vXE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1728; 7:XWrGhbu7yrsM0WZKX+UMxHm8O3+pajlliLJ/U6Tx3herPK7AZfwWfoVeFooBlOr0RwT6qMYgNg2BU9mSWWxLz6+z9WQLhRDZdPhvwAO7CoMdP4jMY0OFc2E1BI3RiOnitkV0tiMNXKzSyWo6VHKM0kwGF7k6UftSgKVcFCajtdB8jfEzolMPQdRSoH3ii7HMT+UNjl561ygj1B11KIRr6C/A4FjnvLMycGYgFNyoq1pggdqUby7sVfeEkr1G787WOisPm4Y7sc3X9Zc0uztcd6hHlyaofV89MAmJuJ71rsrUBGp2WLZNyHx+sFZxd1JfBr1W0Y+wQ9Q1BMLzD0uKM1ZVitUfy4RWQGEqyA9sZCHIunC/j7eswtICSTgmZA/ynwm8iqbRCNByCFHxli90kwE25J+TgEt8VqBNf5a3sdbnP6n3zCr+xBW8iz6aS3qVM5oZ9khJBvZImcI9YB8SLnlB8CsA44mkc6kmLahwY9qSnCSyNvTjGFpbZSfanCBFS72+JqYSbyrUG0hHpVTbaA== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2017 06:58:20.1136 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0701MB1728 Subject: Re: [dpdk-dev] [PATCH v2 07/15] event/sw: add support for event queues 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, 07 Feb 2017 06:58:24 -0000 On Mon, Feb 06, 2017 at 10:25:18AM +0000, Van Haaren, Harry wrote: > > -----Original Message----- > > From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com] > > Sent: Monday, February 6, 2017 9:25 AM > > To: Van Haaren, Harry > > Cc: dev@dpdk.org; Richardson, Bruce > > Subject: Re: [PATCH v2 07/15] event/sw: add support for event queues > > > > On Tue, Jan 31, 2017 at 04:14:25PM +0000, Harry van Haaren wrote: > > > From: Bruce Richardson > > > > > > Add in the data structures for the event queues, and the eventdev > > > functions to create and destroy those queues. > > > > > > Signed-off-by: Bruce Richardson > > > Signed-off-by: Harry van Haaren > > > --- > > > drivers/event/sw/iq_ring.h | 176 ++++++++++++++++++++++++++++++++++++++++++++ > > > drivers/event/sw/sw_evdev.c | 158 +++++++++++++++++++++++++++++++++++++++ > > > drivers/event/sw/sw_evdev.h | 75 +++++++++++++++++++ > > > 3 files changed, 409 insertions(+) > > > create mode 100644 drivers/event/sw/iq_ring.h > > > > > > + */ > > > + > > > +/* > > > + * Ring structure definitions used for the internal ring buffers of the > > > + * SW eventdev implementation. These are designed for single-core use only. > > > + */ > > > > If I understand it correctly, IQ and QE rings are single producer and > > single consumer rings. By the specification, multiple producers through > > multiple ports can enqueue to the event queues at a time.Does SW implementation > > support that? or am I missing something here? > > You're right that the IQ and QE rings are Single Producer, Single Consumer rings. More specifically, the QE is a ring for sending rte_event structs between cores, while the IQ ring is optimized for internal use in the scheduler core - and should not be used to send events between cores. Note that the design of the SW scheduler includes a central core for performing scheduling. Thanks Harry. One question though, In RTE_EVENT_DEV_CAP_DISTRIBUTED_SCHED mode, multiple SW schedulers can be active. Right? If so, We need multi consumer. Right? > > In other works, the QE rings transfer events from the worker core to the scheduler - and the scheduler pushes the events into what you call the "event queues" (aka, the atomic/ordered queue itself). These "event queues" are IQ instances. On egress from the scheduler, the event passes through a QE ring to the worker. > > The result is that despite that only SP/SC rings are used, multiple workers can enqueue to any event queue. Got it.