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 DA0CE42A12; Thu, 27 Apr 2023 16:58:57 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 68E4F42D2D; Thu, 27 Apr 2023 16:58:57 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 3DAD842B8C for ; Thu, 27 Apr 2023 16:58:56 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 33R8EkPH015635; Thu, 27 Apr 2023 07:58:55 -0700 Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2169.outbound.protection.outlook.com [104.47.58.169]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3q7nc39hp3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 27 Apr 2023 07:58:55 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Akx5OXnmE493uC2gCXLnt9Of0OEZMFcKt/fvERr9HE4VCJo2o7mVK/nG9ANLMD5WtIb/oHQFzFyMgtlk3HItDSgySiiI+eN1nrZLQjUDRtnHmEtI9LivGWgR4vWspacemXgGeQWdESNuJdDWn9gqKiNJBrBcrUC+DUSgx5pLSe2fCirEWwimSOXPsExdv3X+2NuQgLzhR0rewGutavWyh1hO7z3HVIdZ9cscFgoC8cv7QS7dfpFQi4CEXvJADvA7mH6Q9t6LjSreOPeHh96Z7ynXkravBGnxfbP/2bdumzM5FVGIzriXlI+B8z6rpHjgYTGHOlEIPDgYmBaA1Y2uTQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=DeosXGt9bSZZ+8MHJwnkHrGyanYb9q6dAPvgsMgZzCA=; b=M79P3oH6F4juze7YeiXgEHiWlAbF5oqCpWfD+YE7J7jOOGvaLsCi51PX0x3oipC2ToiOXEa+1G587mbP6da+jlDcTy/yXSQ074tf/8e9Oq20xPWjHnrr/j7lG7jCmWQ041kt5eHeOc0Oozt66LCn1jWIkDvjt5oka/52J7z2nN2dFFy7MejadOg4s3dRH57/qpZLLuw1jSPuKqQA17S7/i5+yP8hRyK2j3ugl7odV56uGHS2CezL8QdS44qynDN5wPSXNDw9nzAC9zoB4hBrCKC83B03cCh8cAH3jj0TyN5oVbKWuozCDU5mjRcttTvKqWaE4qIjWTARf7nsnq0G4w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DeosXGt9bSZZ+8MHJwnkHrGyanYb9q6dAPvgsMgZzCA=; b=uUAsTGI32tyZEvf2AvYkzhpIAsCoWsWa5Rhk8Xl4IhDz57z+CidGmspGngTw4r67yAKCgLafyMMBzDvXqhvYdBYGRmy8wPoF1zUNgwPK/PfO0WeFffse2eG8k3QjuQZMPFuOLKULaQrrh/NTfqC/nQXkT9QV7UqOzSzw76v+XT4= Received: from PH0PR18MB4086.namprd18.prod.outlook.com (2603:10b6:510:3::9) by CH0PR18MB5420.namprd18.prod.outlook.com (2603:10b6:610:184::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.21; Thu, 27 Apr 2023 14:58:50 +0000 Received: from PH0PR18MB4086.namprd18.prod.outlook.com ([fe80::2e10:cd72:2bc4:b4bb]) by PH0PR18MB4086.namprd18.prod.outlook.com ([fe80::2e10:cd72:2bc4:b4bb%6]) with mapi id 15.20.6340.021; Thu, 27 Apr 2023 14:58:50 +0000 From: Pavan Nikhilesh Bhagavatula To: Zhirun Yan , "dev@dpdk.org" , Jerin Jacob Kollanukkaran , Kiran Kumar Kokkilagadda , Nithin Kumar Dabilpuram , "stephen@networkplumber.org" CC: "cunming.liang@intel.com" , "haiyue.wang@intel.com" Subject: RE: [EXT] [PATCH v5 11/15] graph: introduce graph walk by cross-core dispatch Thread-Topic: [EXT] [PATCH v5 11/15] graph: introduce graph walk by cross-core dispatch Thread-Index: AQHZY4XuVam6SKBteEK6+C7rOxWXcK8/aQXA Date: Thu, 27 Apr 2023 14:58:50 +0000 Message-ID: References: <20230330061834.3118201-1-zhirun.yan@intel.com> <20230331040306.3143693-1-zhirun.yan@intel.com> <20230331040306.3143693-12-zhirun.yan@intel.com> In-Reply-To: <20230331040306.3143693-12-zhirun.yan@intel.com> Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-dg-ref: =?us-ascii?Q?PG1ldGE+PGF0IG5tPSJib2R5LnR4dCIgcD0iYzpcdXNlcnNccGJoYWdhdmF0?= =?us-ascii?Q?dWxhXGFwcGRhdGFccm9hbWluZ1wwOWQ4NDliNi0zMmQzLTRhNDAtODVlZS02?= =?us-ascii?Q?Yjg0YmEyOWUzNWJcbXNnc1xtc2ctMDMzNWViYTEtZTUwYy0xMWVkLWI2Y2It?= =?us-ascii?Q?NGMwMzRmNWZhYTM2XGFtZS10ZXN0XDAzMzVlYmEyLWU1MGMtMTFlZC1iNmNi?= =?us-ascii?Q?LTRjMDM0ZjVmYWEzNmJvZHkudHh0IiBzej0iMjYxMSIgdD0iMTMzMjcwODEx?= =?us-ascii?Q?Mjg1NjQ1NjQ2IiBoPSJlclJjN2lUalMzSXpCVTZFV2NOUmZCbnlCRDg9IiBp?= =?us-ascii?Q?ZD0iIiBibD0iMCIgYm89IjEiIGNpPSJjQUFBQUVSSFUxUlNSVUZOQ2dVQUFC?= =?us-ascii?Q?UUpBQUJPNlp2RkdIblpBYlVZcjA1bWx5emF0Uml2VG1hWExOb09BQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBSEFBQUFDa0NBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBRUFBUUFCQUFBQWFpNXhJQUFBQUFBQUFBQUFBQUFBQUo0QUFBQmhB?= =?us-ascii?Q?R1FBWkFCeUFHVUFjd0J6QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFFQUFBQUFBQUFBQWdBQUFBQUFuZ0FBQUdNQWRRQnpBSFFBYndCdEFG?= =?us-ascii?Q?OEFjQUJsQUhJQWN3QnZBRzRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFB?= =?us-ascii?Q?QUNBQUFBQUFDZUFBQUFZd0IxQUhNQWRBQnZBRzBBWHdCd0FHZ0Fid0J1QUdV?= =?us-ascii?Q?QWJnQjFBRzBBWWdCbEFISUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFJQUFBQUFBSjRBQUFC?= =?us-ascii?Q?akFIVUFjd0IwQUc4QWJRQmZBSE1BY3dCdUFGOEFaQUJoQUhNQWFBQmZBSFlB?= =?us-ascii?Q?TUFBeUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= x-dg-refone: =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBZ0FBQUFBQW5n?= =?us-ascii?Q?QUFBR01BZFFCekFIUUFid0J0QUY4QWN3QnpBRzRBWHdCckFHVUFlUUIzQUc4?= =?us-ascii?Q?QWNnQmtBSE1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFRQUFBQUFBQUFBQ0FBQUFBQUNlQUFBQVl3QjFBSE1BZEFC?= =?us-ascii?Q?dkFHMEFYd0J6QUhNQWJnQmZBRzRBYndCa0FHVUFiQUJwQUcwQWFRQjBBR1VB?= =?us-ascii?Q?Y2dCZkFIWUFNQUF5QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFB?= =?us-ascii?Q?QUFBQUFBQUlBQUFBQUFKNEFBQUJqQUhVQWN3QjBBRzhBYlFCZkFITUFjd0J1?= =?us-ascii?Q?QUY4QWN3QndBR0VBWXdCbEFGOEFkZ0F3QURJQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFnQUFBQUFB?= =?us-ascii?Q?bmdBQUFHUUFiQUJ3QUY4QWN3QnJBSGtBY0FCbEFGOEFZd0JvQUdFQWRBQmZB?= =?us-ascii?Q?RzBBWlFCekFITUFZUUJuQUdVQVh3QjJBREFBTWdBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQVFBQUFBQUFBQUFDQUFBQUFBQ2VBQUFBWkFCc0FIQUFY?= =?us-ascii?Q?d0J6QUd3QVlRQmpBR3NBWHdCakFHZ0FZUUIwQUY4QWJRQmxBSE1BY3dCaEFH?= =?us-ascii?Q?Y0FaUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= x-dg-reftwo: =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBSUFBQUFBQUo0QUFBQmtBR3dB?= =?us-ascii?Q?Y0FCZkFIUUFaUUJoQUcwQWN3QmZBRzhBYmdCbEFHUUFjZ0JwQUhZQVpRQmZB?= =?us-ascii?Q?R1lBYVFCc0FHVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFFQUFBQUFBQUFBQWdBQUFBQUFuZ0FBQUdVQWJRQmhBR2tBYkFCZkFHRUFa?= =?us-ascii?Q?QUJrQUhJQVpRQnpBSE1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUF3QUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUNB?= =?us-ascii?Q?QUFBQUFDZUFBQUFiUUJoQUhJQWRnQmxBR3dBYkFCZkFIQUFjZ0J2QUdvQVpR?= =?us-ascii?Q?QmpBSFFBWHdCakFHOEFaQUJsQUhNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFJQUFBQUFBSjRBQUFCdEFH?= =?us-ascii?Q?RUFjZ0IyQUdVQWJBQnNBRjhBY0FCeUFHOEFhZ0JsQUdNQWRBQmZBR01BYndC?= =?us-ascii?Q?a0FHVUFjd0JmQUdRQWFRQmpBSFFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUVBQUFBQUFBQUFBZ0FBQUFBQW5nQUFBRzBBWVFCeUFIWUFaUUJzQUd3?= =?us-ascii?Q?QVh3QjBBR1VBY2dCdEFHa0FiZ0IxQUhNQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB?= =?us-ascii?Q?QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFB?= =?us-ascii?Q?Q0FBQUFBQUE9Ii8+PC9tZXRhPg=3D=3D?= x-dg-rorf: true x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR18MB4086:EE_|CH0PR18MB5420:EE_ x-ms-office365-filtering-correlation-id: f536fa7a-4dd1-4d11-5e7d-08db472fe923 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FadaKcSNsQBIVu3p9BSMDGJZCW8YfFXte9p9N83/H3HjYU4SI3ZUECf8c+x6MnAn9NlLaOKFJ8dJxxzScLFrmkWqTLWGwc77wg37Flcc/hz60a73RRtfvR9Rt+nSp4Iq5motpzT/zCbnnArChgtj3zdR6s3OHXyZc+/H6SKemADNMXjjM+oePE/sQ8u7LiK5pGLlwaIs2s5YJ99PP3HvOmIWUrsacSxjkoKtPuo5MudNod1tJDFfRcxu59AeCCOhc8RuROaQH2nhslDJGTFZ1oVOVrcJzkLzfqzdXsQPAHkPJ5aAc4bM+N8+1ole18487VVP4YfwQsIYoek/f2BOghYIYid3ExB78VG6OhIa4b1X9Dm0YP7LSjhKognPTlnwNA552XOlq13lXEC8LV/gf7w8Gn0riIeLgG71m16CoTHrzk9NRfXaHBgPAn5lZvsNr8nXPAEoRBgbuxNw+/Y04rsC8mI/Xyyf2rSOx9x0nSjUTW95eX34BBefmXEsQfI03dLAbN4dGToaetCV44QIab2pes9w5oSfxqf094OR4e84Pre9NcC8OlNA1+qMEek7UntNaEIWO6AYzeMWjEu6cHXI/fkw0TEna+LvbaRtALyW957xAUlDjUKmv93rmMgN x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR18MB4086.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(136003)(39860400002)(396003)(376002)(346002)(366004)(451199021)(316002)(66946007)(4326008)(64756008)(66476007)(76116006)(66556008)(66446008)(54906003)(110136005)(7696005)(71200400001)(86362001)(478600001)(55016003)(33656002)(186003)(6506007)(9686003)(26005)(5660300002)(52536014)(122000001)(41300700001)(2906002)(38100700002)(38070700005)(8936002)(8676002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?UzBIEXpH4ZdT+FGXqn8J5kk7Wu0i5ecI4P0TSfJP1y/twQJnriE2gc4iynOW?= =?us-ascii?Q?oL3ERuhqSRjIypC8dtYCqDLNeP+W9p6lHMZEoVfY1ksVSWKGo3Q/mTabPmX+?= =?us-ascii?Q?Hi4EEPSToa4JglCzdxsQTLAQAyYPEfay4jIPX0IXq24ECm+6hajI3PoPCTYg?= =?us-ascii?Q?hetm4345jcrgUGP3G0oAZufA4IiXK514po6SMfVZiHb3Xbt1NwJseh/bMHan?= =?us-ascii?Q?/Fr9qxSYmpgdpzOvmIMSq70tjtEh4JleXMtxc+Y/SY8ptSfha/ZNW4FhbR2q?= =?us-ascii?Q?pfITtTrHwiUv+NFRRiKFH7psVILRtYTQdYrsDezDchEVG6BKmc0nF6C6CNSh?= =?us-ascii?Q?/bwnDV/5q9sOa8f1njK5g8lkKoZ6vyu07Bx4h4U6XbC4bnzb7hToLoEi7gS+?= =?us-ascii?Q?uxJX9AKjrSuN7/t489RkeC75V2jHRlnnh+PLyNU7RoYNUodUUzyOYJOI6uh3?= =?us-ascii?Q?osrY8d2vQh63BqL8Lk0ujtrS5Rs40I8DxAXfM5Dn88u4trAyLEQVB5tglF9o?= =?us-ascii?Q?K9G2LHXMQelNk7n1l8eVQuVkz3Jwnfp38sqt5KfRWT05NIAq9HSHjHw9dGp+?= =?us-ascii?Q?SeypGwfxAcjNrsIEFdcmIMaq/JAYIP2IA+eomRWFWML0NtDOEA/7YOxRTXtj?= =?us-ascii?Q?L3VXWwIOrHPqhiGlS8IhkKoT9rdm5peVe8UTod8vx+aOCvInj5eLOYXlvPni?= =?us-ascii?Q?L++f8g7rfGq6c50cejCEkTKqAB9zKtriXVr+mGkCL8mEpgQSPtshoYuAFYUg?= =?us-ascii?Q?kb6hvZORWZQNcPJEFWNDMPy/7FBfmbYHoPfRR2hvc7w/QKjU5/pGCM8v/zme?= =?us-ascii?Q?hu/6xkmKkuH/INgZQ6So0bDjfZ3dKC9yhOlHuQPqIjWDgRcOUX3mxb+7dvmk?= =?us-ascii?Q?RTOBwK2X8hdYsg+df3o8etPrhJ5oOZ9xVNmgL7LCwkA+KSSdP+r9JKyAMjEI?= =?us-ascii?Q?yzPzuUDTjy/PrRAq3Q/r6wRzbv8A7mbDiHT50pScqVCekOI9G93gkcqC8HPZ?= =?us-ascii?Q?ZFKVmwMSDkmDq3ywVLe/YmKbTozhua5Y3nqeqC+r2ApXuHRctCiJNwkUDkig?= =?us-ascii?Q?Wf6gWn3+4nMAz46maQqAHJ8epLjnlkoLIsvGKTRSI2bV0hD9+aWoMCUSfCLD?= =?us-ascii?Q?gjDHxdEiJ9zbHmW/AuVs1B317tM7kprHgfyy1Hvk+PiNZMR+tR+mCiYsVyuY?= =?us-ascii?Q?mtpvYdDaQT1EfVMwM+nvCBCCgO9aS1GMIpAybmxcTwfI/Hln9lHnZIy46Zbm?= =?us-ascii?Q?+Dax6L1jdC6aBblKf2x/Lb1TrOqMDA+BAbDzTc8CWDM7cmSQJeZUTw9dYLft?= =?us-ascii?Q?P+nFILUv8EFHfwbxvLCei0vTgV+jqM4AcISJL1oa/AvVKSLiX+5qLv+guJFa?= =?us-ascii?Q?s3e9wSua6sF9BInLxXKzytns1Jr6ANgeHHAAaILDtlcgJmg4Niacuv2J5/Vf?= =?us-ascii?Q?9MA4YFzlUutjszQyxUFaWp0yY33eruDqUNwEydVwpBBMHObx/Eym8F9bd6ro?= =?us-ascii?Q?5kZP0q661AgBQdsofLC2h8IJPCyys3KDPFPeMQNCwdvHR4MGqUaCkn5kCpSN?= =?us-ascii?Q?uEE3uK3e5NFfu2pUhnSVL9zsFNHoB5PLd6JzmXRi?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR18MB4086.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f536fa7a-4dd1-4d11-5e7d-08db472fe923 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Apr 2023 14:58:50.3249 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 6FvXBZFkH6jKGx949frxtUBPV3dHxF6d7yXk3tWY+R3uRJjZXO57PYQiaO4ddFfEgJuw2Hzh8lWT0dsJjrV1xLhEhnld8scezKcXSDH/vFg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR18MB5420 X-Proofpoint-GUID: n3TuB1ORZjH_Xv0B70QrrVzGEkYlyeLU X-Proofpoint-ORIG-GUID: n3TuB1ORZjH_Xv0B70QrrVzGEkYlyeLU X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-04-27_07,2023-04-27_01,2023-02-09_01 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 > This patch introduces the task scheduler mechanism to enable dispatching > tasks to another worker cores. Currently, there is only a local work > queue for one graph to walk. We introduce a scheduler worker queue in > each worker core for dispatching tasks. It will perform the walk on > scheduler work queue first, then handle the local work queue. >=20 > Signed-off-by: Haiyue Wang > Signed-off-by: Cunming Liang > Signed-off-by: Zhirun Yan > --- > lib/graph/rte_graph_model_dispatch.h | 42 > ++++++++++++++++++++++++++++ > 1 file changed, 42 insertions(+) >=20 > diff --git a/lib/graph/rte_graph_model_dispatch.h > b/lib/graph/rte_graph_model_dispatch.h > index 18fa7ce0ab..65b2cc6d87 100644 > --- a/lib/graph/rte_graph_model_dispatch.h > +++ b/lib/graph/rte_graph_model_dispatch.h > @@ -73,6 +73,48 @@ __rte_experimental > int rte_graph_model_dispatch_lcore_affinity_set(const char *name, > unsigned int lcore_id); >=20 > +/** > + * Perform graph walk on the circular buffer and invoke the process > function > + * of the nodes and collect the stats. > + * > + * @param graph > + * Graph pointer returned from rte_graph_lookup function. > + * > + * @see rte_graph_lookup() > + */ > +__rte_experimental > +static inline void > +rte_graph_walk_mcore_dispatch(struct rte_graph *graph) > +{ > + const rte_graph_off_t *cir_start =3D graph->cir_start; > + const rte_node_t mask =3D graph->cir_mask; > + uint32_t head =3D graph->head; > + struct rte_node *node; I think we should add a RTE_ASSERT here to make sure that the graph object = is a cloned graph. > + > + if (graph->wq !=3D NULL) > + __rte_graph_sched_wq_process(graph); > + > + while (likely(head !=3D graph->tail)) { > + node =3D (struct rte_node *)RTE_PTR_ADD(graph, > cir_start[(int32_t)head++]); > + > + /* skip the src nodes which not bind with current worker */ > + if ((int32_t)head < 0 && node->lcore_id !=3D graph->lcore_id) > + continue; > + > + /* Schedule the node until all task/objs are done */ > + if (node->lcore_id !=3D RTE_MAX_LCORE && > + graph->lcore_id !=3D node->lcore_id && graph->rq !=3D NULL > && > + __rte_graph_sched_node_enqueue(node, graph->rq)) > + continue; > + > + __rte_node_process(graph, node); > + > + head =3D likely((int32_t)head > 0) ? head & mask : head; > + } > + > + graph->tail =3D 0; > +} > + > #ifdef __cplusplus > } > #endif > -- > 2.37.2