From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8D68AA04BC; Tue, 29 Sep 2020 17:42:05 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6C6411BFFB; Tue, 29 Sep 2020 17:42:04 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 4F9DB1BFDA for ; Tue, 29 Sep 2020 17:42:01 +0200 (CEST) IronPort-SDR: 35+6gfOHtnKLsdaitEyKcO1NML/rlkVLRE7fouq2myWFQXN5XoVwMYq5go0VW2yTF/YOdwxjmU 49rVdLjmri1w== X-IronPort-AV: E=McAfee;i="6000,8403,9759"; a="149998581" X-IronPort-AV: E=Sophos;i="5.77,319,1596524400"; d="scan'208";a="149998581" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Sep 2020 08:42:00 -0700 IronPort-SDR: 7aNTE49AXTMiShPWmXGS8vMC+HGdu3AI0I/tUtH1PuBpzVP38FrTvfI0Q3a3KxQr51xuX5FL6o imnj07d9aDPQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,319,1596524400"; d="scan'208";a="338684564" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga004.fm.intel.com with ESMTP; 29 Sep 2020 08:41:59 -0700 Received: from orsmsx605.amr.corp.intel.com (10.22.229.18) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 29 Sep 2020 08:41:59 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 29 Sep 2020 08:41:59 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.102) 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.1713.5; Tue, 29 Sep 2020 08:41:57 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V7bpeecvDfJN1MeSA/Xrh+x4BCliH7uGdJHRL8wP7ex15kp50+0MkXpWdVoMJwoRL7kOl45X22CwYS2UlVY6wgji7EcF9nQq9660NVgNSDnKYcqFK3LQ+FAbaavToBj9AiIv1RJnKJIeDWf44ilOXq7+MkVY2+YMTWfjiZCzL+1WOp09QBKmBYRmO7QoBpUPPcF/NWlTjkE3Gqx/7iHAX8/12SGBj19BM3ZR0h201iyoNPcBy1Lk/e9KeifER4mFZ7djJRA+idy3Oq+HTEpF9TQLJMotKdWB9Qm+whpYJAGDc2BiBSSsPlHNnKMOJgSgcAsDfCJehj+VusTI8S/T1g== 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=814fvmYJpoVMxVTJcLfukoTXKIN56HMMdccJWxk79rI=; b=FUvopDbDUpMHEkYD6c7X+pcI0+xBZus3HbAgTrTP24ljnnBf2nY6h6Py4Q02JEAFxu/yslOjXkTy5ODrOPv8EIoZC036Q2mWqfp4Dqagk8Kc8wxcGJ1GNeTf73fkW1Zs+PtaOtIxcJ1m3I267M8/jaza1NYmax+x/pfrua67szUZOsgepDmnkLw4rFgGnuoUBkSHmoMutZs9gnJK83nZ/SpFPvLrJsRX4U0DzM0yPVUkuq4FVSJNrwt09pU1Ph1P2ZMDfCEczdYY62VoPbj2EKEkNw3aKqD3KteRis/7xH/QmjhTd0mgg5+p4t/CswKkRDSDDHH/mJ7wKak5wkMNLQ== 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=814fvmYJpoVMxVTJcLfukoTXKIN56HMMdccJWxk79rI=; b=D+8V5GdWPe9PbbADh2+ZTGDbbuY8b9u/UR7kvk8ocDPnGp23KckPt19e1h9hwUUmBoNH8mnRf2kUorYj+2Guw1JzKs1w2RB1s+Sba9QtQ4sHB0ao8TGCSKVejRGSb9wSdRifAwtoK9OtwK9FxRn8ii+pLd2Np/8aaM+V8RcQuIM= Received: from MN2PR11MB3725.namprd11.prod.outlook.com (2603:10b6:208:f9::23) by MN2PR11MB3789.namprd11.prod.outlook.com (2603:10b6:208:f2::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.24; Tue, 29 Sep 2020 15:41:53 +0000 Received: from MN2PR11MB3725.namprd11.prod.outlook.com ([fe80::20e3:1612:5449:76e8]) by MN2PR11MB3725.namprd11.prod.outlook.com ([fe80::20e3:1612:5449:76e8%5]) with mapi id 15.20.3412.029; Tue, 29 Sep 2020 15:41:53 +0000 From: "O'loingsigh, Mairtin" To: "Singh, Jasvinder" , "Richardson, Bruce" , "De Lara Guarch, Pablo" CC: "dev@dpdk.org" , "Ryan, Brendan" , "Coyle, David" Thread-Topic: [PATCH v2 0/2] net: add CRC run-time checks and AVX512/VPCLMULQDQ based CRC Thread-Index: AQHWlnNDdUChOiY3v0iDlHXo8Ut6dKl/wP5Q Date: Tue, 29 Sep 2020 15:41:53 +0000 Message-ID: References: <1599739271-16605-1-git-send-email-mairtin.oloingsigh@intel.com> <1601392366-22625-1-git-send-email-mairtin.oloingsigh@intel.com> In-Reply-To: <1601392366-22625-1-git-send-email-mairtin.oloingsigh@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [86.44.213.168] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f0d01db7-9e6e-4e54-09ac-08d8648e30b5 x-ms-traffictypediagnostic: MN2PR11MB3789: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: X0kfb3nJ4Cu/vQNJwlJNmFZZQgLZaflPlpnNZXStUdVkdoagZSDkZwiMsMIfoyrZnEKuIiPdyjyMUUqCbhP1EA4+IJ6SNyrWbspVsoh8vvLl/GmRJei8Um3xP/hmtU0WYUoV3Mp00gvK5pQlEfiSW85P7ovetu5+wBsN9RGZ7b9y9wPtO51W3qHgNOteduFjtzvVEE8LRNqOu4P0DoPRgBIx1vk3IUPhD3m48XE8ed/vEpRgn09iVUN8ILlxoZpcWMZWT9oQkO86NBk8KmGZcoFFj6z4si/1HiTzGvc1TpquE0ky37XFiNDsvSFZzRKh4QtDi6TyJvjRpFirW4nJfU2dQHer9D1S+UXQxSDXc9x9MBsy+/jDJNUkMHAtwRYd x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB3725.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(396003)(346002)(376002)(136003)(39860400002)(54906003)(55016002)(6636002)(9686003)(5660300002)(71200400001)(83380400001)(86362001)(186003)(52536014)(110136005)(53546011)(6506007)(26005)(478600001)(2906002)(7696005)(64756008)(66556008)(66446008)(33656002)(8676002)(66476007)(107886003)(76116006)(316002)(8936002)(4326008)(66946007); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: 8WWVqcQcgThnRH+i+C3cAtVCpp+c3Taj7YwW4fCQ7HRQert3dhkzwGpNjtl1OlaQoL4p4eiPbEfosrFPrAPl172gDjmre8LRk6sq6srnPaoDPy9k44LPRnIYP0GULT3JNw7wdczG9AGkPreuZmVsbRT0oVCyQyiKIC18oCFl4yoadkrCIgaRZFkajbZ9FzVyWOtN63fi0JYcnLovSrVwpFmGC5a+q7ZStxclARzg7Y8uJMU9AfIawTY3/1WyJFE1l8zcd2dQspImYYp0n+lhsnOSk+0lb9d4Q++yGKvZa99jya8E0WtL36GHZaG3BJ0y6XTN/FgOC/HagNJ+7REcjj7XdbrQB/z/Yv5BaxemNh1S114F2C4nf07gRRpkg5YgF50DsnTVILtylC0tcEKZmEtB+p1Gp9s3vr7a3s3H4G+TI8ZzfiTqBjb4JG8UQMnnF6QmZ7dEePFB9XFabrvKevbfNHxKg17o0WRqW7oNK/KcPcb37EFAieSfxol386wCIRFH+G2R+vvv4a/N1iC3IxLeMoDUMqE+g01zniciLjJn//xLZpdUasM3F6YnJQJ8yVu+4XcMBDL1vLknpHYKV29DjjYsGQxnPSilkPGBjri+4RWvdYteol7fe52OZwEYVre+cBHC57uU7+YEYbXPAw== 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: MN2PR11MB3725.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f0d01db7-9e6e-4e54-09ac-08d8648e30b5 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Sep 2020 15:41:53.6980 (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: drak9VXg91c2Nyzdem4XVTmoaFgSoDBOgRJxL86ozZtYufC5gUVaZAhZbgfeD/2KE5aj/2taUwh9lDHB3349BhTBwIcZyV0saxsh/QIagFE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3789 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v2 0/2] net: add CRC run-time checks and AVX512/VPCLMULQDQ based CRC 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi, > -----Original Message----- > From: O'loingsigh, Mairtin > Sent: Tuesday, September 29, 2020 4:13 PM > To: Singh, Jasvinder ; Richardson, Bruce > ; De Lara Guarch, Pablo > > Cc: dev@dpdk.org; Ryan, Brendan ; Coyle, David > ; O'loingsigh, Mairtin > > Subject: [PATCH v2 0/2] net: add CRC run-time checks and > AVX512/VPCLMULQDQ based CRC >=20 > This patchset makes two significant enhancements to the CRC modules of > the rte_net library: >=20 > 1) Adds run-time selection of the optimal architecture-specific CRC path. > Previously the selection was solely made at compile-time, meaning it > could only be built and run on the same generation of CPU. Adding > run-time selection ability means this can be used from distro packages > and/or DPDK can be compiled on an older CPU and run on a newer CPU. > 2) Adds an optimized CRC implementation based on the AVX512 and > VPCLMULQDQ instruction sets. >=20 > For further details, please see the commit messages of the individual > patches. >=20 > v2: > * Added support for run-time selection of optimal architecture-specific > CRC, based on v1 review comment. > * Added full working AVX512/VPCLMULDQD support for CRC32-Ethernet and > CRC16-CCITT. >=20 > v1: > * Initial version, with incomplete AVX512/VPCLMULDQD support for > CRC32-Ethernet only. >=20 > Mairtin o Loingsigh (2): > net: add run-time architecture specific CRC selection > net: add support for AVX512/VPCLMULQDQ based CRC >=20 > app/test/test_crc.c | 11 +- > config/x86/meson.build | 6 +- > doc/guides/rel_notes/release_20_11.rst | 6 + > lib/librte_net/meson.build | 89 ++++- > lib/librte_net/net_crc.h | 45 +++ > lib/librte_net/net_crc_avx512.c | 424 ++++++++++++++++= ++++++ > lib/librte_net/{net_crc_neon.h =3D> net_crc_neon.c} | 27 +- > lib/librte_net/{net_crc_sse.h =3D> net_crc_sse.c} | 34 +- > lib/librte_net/rte_net_crc.c | 100 +++-- > lib/librte_net/rte_net_crc.h | 4 +- > 10 files changed, 674 insertions(+), 72 deletions(-) create mode 100644 > lib/librte_net/net_crc.h create mode 100644 lib/librte_net/net_crc_avx51= 2.c > rename lib/librte_net/{net_crc_neon.h =3D> net_crc_neon.c} (95%) rename > lib/librte_net/{net_crc_sse.h =3D> net_crc_sse.c} (94%) >=20 > -- > 2.12.3 I encountered a problem submitting the v2 patch and have submitted a v3 Regards, Mairtin