Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sJL4C-004LjH-MT for pgsql-hackers@arkaria.postgresql.org; Mon, 17 Jun 2024 22:43:13 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sJL4A-004hSS-Cj for pgsql-hackers@arkaria.postgresql.org; Mon, 17 Jun 2024 22:43:11 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sJL49-004hSK-M9 for pgsql-hackers@lists.postgresql.org; Mon, 17 Jun 2024 22:43:10 +0000 Received: from mgamail.intel.com ([192.198.163.19]) by magus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sJL46-002BvQ-Lc for pgsql-hackers@lists.postgresql.org; Mon, 17 Jun 2024 22:43:09 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1718664187; x=1750200187; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=vvwrFxHTsPzQIZl2WL7E25CFumbIIdYVAgp+OcUWyUo=; b=FOE2m2VgUxNRzj+kPOXmOQJAlx0AG6xYj5yBpH34EBzTMHfOJeeVHgBI +wUBcEQd1GuGuiUjmQ/k/Va2dOLYt1ZAn3E4wKQ7H+P9gV7WBHjNzoKs9 m0UNyPXLsDkJczkz2YeTQXlpC4/7O5V9oIpclgb40MQVcmn9j7WXLbAgX 0SWjvRgZ2M9/3B17p1Z4/ksWVaTImv2KcrV1+UKcTNKwc40+4D8abgfcs EhfZcm8IbKc3wGYokW5if6XTR2w8h5W4jtI9C/GAA3CrxLB3Tpx8zQ1X/ OUFZ2BYJjE68HDoaRuF6g79OazQ7NMK4HUx0rc/dzBaJ2kOKyzjloGZJM w==; X-CSE-ConnectionGUID: 8Beti3yKRUibjKiYCRSWjQ== X-CSE-MsgGUID: Aoxn0oJnRzStDhgKfFuRFA== X-IronPort-AV: E=McAfee;i="6700,10204,11106"; a="15282958" X-IronPort-AV: E=Sophos;i="6.08,245,1712646000"; d="scan'208";a="15282958" Received: from orviesa003.jf.intel.com ([10.64.159.143]) by fmvoesa113.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jun 2024 15:43:03 -0700 X-CSE-ConnectionGUID: ab/2whSnTZGObVpVHUojBw== X-CSE-MsgGUID: 52y6ojERSfqXIGdHSuCPdA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,245,1712646000"; d="scan'208";a="46254964" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orviesa003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 17 Jun 2024 15:43:02 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 17 Jun 2024 15:43:02 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 17 Jun 2024 15:43:01 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Mon, 17 Jun 2024 15:43:01 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.101) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Mon, 17 Jun 2024 15:43:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KAegkiMoY7bUocf2rz/2y3CK1B+/nHYeCeSeb1nxjyH+tjfBn7C8nd6NIq8P/SfYYK0tgl/Jtt3BNnecbv9piyNt6wPKhZhoR0hHhmncNkPhaea58mG0J3j8+2ldFI+o/BO0V/vzu6Ou11j8yO4I8iM4NZjx4hoBZOmA1RfWCBViUkrtusIOLJNRsS+pg9E0+8jPw5Alwnpu7JMspSYkoiOCq937VKkgdJwFRguR1hmOR7zTvXK4TKPb8kxegT3o9TXqgr5cJ8T2y2uWeQAjOXeLGNyQVMSqWVAPKV9svPVWF8hTOqAlSGLWwexl8Cbia5Gt0ihIHilKsnBzm9TREQ== 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=uLd5JbqCL65b/E+z415NpecNwECgxZ/H327nzr1kyAA=; b=YHMDb1cNyXMZnVSBnHTFwyy0FUSWoz8InRTCR+LwG5kyUUp8OaZf5kTkZ1pwBADBCeKBE6FlpeDPlgjpliO193EfrbmSK6W5AwXFPFotEhA5Kj/rA4vy+hCiR+m9R1KBkAZGleZZrqlYPcEBtQgOE1eoKWyloKMOLkpz+ot0c8odSAeU6MB0fz8m5dSd46/0w5hZ7Q+SrxUjh2/GGf29NYiVPZxoeG0xgMo9MRcpe32tQlFlqIMMMLdw8qkUSlEmnvhRwUC4+99DIAliDbdiLjjVoC6AZJ2R+euiy66z78gmCIiS2vWWVMYOtw2BQ0VnW/WKVrEPeWeEaP9S0AfoUg== 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 Received: from BL1PR11MB5304.namprd11.prod.outlook.com (2603:10b6:208:316::20) by DS7PR11MB6037.namprd11.prod.outlook.com (2603:10b6:8:74::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Mon, 17 Jun 2024 22:42:54 +0000 Received: from BL1PR11MB5304.namprd11.prod.outlook.com ([fe80::c328:dc5:c815:ea40]) by BL1PR11MB5304.namprd11.prod.outlook.com ([fe80::c328:dc5:c815:ea40%5]) with mapi id 15.20.7677.030; Mon, 17 Jun 2024 22:42:54 +0000 From: "Amonson, Paul D" To: Andres Freund CC: "pgsql-hackers@lists.postgresql.org" , Nathan Bossart , "Shankaran, Akash" Subject: RE: Proposal for Updating CRC32C with AVX-512 Algorithm. Thread-Topic: Proposal for Updating CRC32C with AVX-512 Algorithm. Thread-Index: Adqb27jiuXmC5sH1QzmzETmUIqng2AhKQCWAAQB9aiA= Date: Mon, 17 Jun 2024 22:42:54 +0000 Message-ID: References: <20240612201135.kk77tiqcux77lgev@awork3.anarazel.de> In-Reply-To: <20240612201135.kk77tiqcux77lgev@awork3.anarazel.de> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR11MB5304:EE_|DS7PR11MB6037:EE_ x-ms-office365-filtering-correlation-id: 27089cbf-dc2e-4c0a-0ed9-08dc8f1ed3b0 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230037|376011|1800799021|366013|3613699009|38070700015; x-microsoft-antispam-message-info: =?us-ascii?Q?/kx0Xvdj34+bWQFT/9n2Vnm8O9/c49KyNObozAS9Mq5NwD9oKZ3EybwkHswk?= =?us-ascii?Q?OdX9Bs7SYcQjydiXkET40dDxmPI3jTuITcvhoVk7e6sk5SkJXB09YwcUA9H6?= =?us-ascii?Q?Edzka6JL9tO3MJSgMqbSaqzNpH5vE+7PFzdaoSjt89Hl1JEqCaZOnwPe37L0?= =?us-ascii?Q?HDyFbcoanJ6Q+P+emoh/A6VuUQk3aXuFtdR8zNKiBRPx9Lmhr1T03Oy4t1ia?= =?us-ascii?Q?K7k+vQXn0LrwIpMoTemn1PszXfIurKxiFaS8ANNztFtIy1Gi5h/uGlcmfHhu?= =?us-ascii?Q?i7G3a9tW71yNEQVCSW+cC3W2YfWFJow/Uj1mKei6ywKUsrLV7JvNiiI+V13m?= =?us-ascii?Q?HAc/vpnqaDVcVOi7sf5MQ7TaFATAFOTCvRqPafWPlE51dYecBMVxAu5fg18J?= =?us-ascii?Q?X8IbZIN6ibcqrPIs1AAZjnMtv0FisY6rnmcxYNlPYiEzGIZqMonknyUv56IW?= =?us-ascii?Q?ha3uW/8wQwVs53LHiDzBOVnu924G6ThdCrwlymr6yjqTrpBhJTv/0AUBHoSU?= =?us-ascii?Q?PC88lEWiqWQlOJe1CMStZqCOvZ3giYgYOQ9O4z0XeKUFzwrfya9DjPKXtdPY?= =?us-ascii?Q?7paBhiTymMrpJ/nGL/BVknnRZgQzLpDgU5vOMpWO3MYlYXZEjGYBJNlaX8aI?= =?us-ascii?Q?AZ4K2bFBsv4DJV66dKfpGacKexsy6fVCsQusYmIMIJFzVhH6w+jcaxUuh2r6?= =?us-ascii?Q?ZdauEKZhG1oeyJ17tJ1vj2reTlqkiJIodzxRzDFNXDdh0+/DKSNC4aMhnjsV?= =?us-ascii?Q?GXPlF4O/UpwkvEBDhZfN70tnAvYAxgIIjlfWNShw7EJ+xcl914Erbrm5EGDh?= =?us-ascii?Q?0t6Zmg1qHp2mZXzPjPn67nsKx48a20NrLVgkA3oH4UQ8C35cRgKfB2gfkr5l?= =?us-ascii?Q?Ir4DtO5mf3DEMuYp/6HipdHrfD98bbS+b8qPpmDLzLOJQCZRN9ZLj4oSeayk?= =?us-ascii?Q?IhXTkADeUv8piMUA0nNhU6so7kBqaeHfUSGY/oDTSVk6wIjF+PVyA6htUgWk?= =?us-ascii?Q?X3HrKeKlslPjlSwF5Me3bOZl7fmssfr4WP5af9BqcO6RsoP5LIVHfW33BOVI?= =?us-ascii?Q?hX0pKqQIeUR0yWDKRXpuJVh6UfY06Lgms1sV6a/iCk8JaWx8FZe/O+UiDJdR?= =?us-ascii?Q?NnWP3fPAbUpk4gSYq9Z2u18X7Sma9vnVC79UXAnUhxWkRAsne9J4NfzlOuFO?= =?us-ascii?Q?+0L4nf/kp4ryGl/sFM+N1+ICrujrOUcooatck5Ay349pBVFVm4NosOyS1+5L?= =?us-ascii?Q?x8xbdsbqY8o70P8Q6tOkAWOEZMx5w7oLZ2Zs0yv+ow39PDaag1ReQvQ7oxWN?= =?us-ascii?Q?GGtymeLhN5s/4IWSUiv425yl9KeyCcco+B2zTjr12h6aX0E/SX2zyk3g6Syu?= =?us-ascii?Q?tAuMP9ye0Ofrt3AwVNUftdrk5d5bj1FbDy2uW55bzJMPRaYn3g=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR11MB5304.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230037)(376011)(1800799021)(366013)(3613699009)(38070700015);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?BumR+RFveQVPSTGgAqSpE5iV4sUg7eqjWpi6750e9dwmXmejuWrEpNliJp7T?= =?us-ascii?Q?6lZVVBggByhq9WnWaKi05d4BapMkjPVsz5DQ1qvdfmEV3qlEqaZvhsv4cdOF?= =?us-ascii?Q?YYLr8LGn0WgBD4l2yCesQnTTal8Rilv+v6yyBNMk0gs6ikfUJCZaTCqOYZv5?= =?us-ascii?Q?E/DbEHyQRzM3mh2YSkBGtZZ4o50RsUzSUreVEtPYN8r+KbJZBQIuUu6d2Agp?= =?us-ascii?Q?jlw7/X6axW9zxnzNatx1lBC+TOd53/R9LwlBFosKSUPt/3ERll+tKVDGx6Wb?= =?us-ascii?Q?CVdjH3Y1uexZC2wuJCo1EP+nRBFjzi2oGwu1dKPi/VPHGZCqjaRzaW+BaHy6?= =?us-ascii?Q?wGReFBpsHVhX024QeTVWTFoWjUqL6bb3IVmUna3m34gqsiZ/xFwCdfc2FWK6?= =?us-ascii?Q?sDjLRtJZ49heTnmr+RQ+5FR76gg5rVUx5C0ttOYZJlHDIFjH9c55yqaB89dM?= =?us-ascii?Q?Nr2WUoqKIzTq184ckDOQiYwdTSvJSPFi2ugJUcRqS+1Ghuk+tnA31v1Zxsrf?= =?us-ascii?Q?bL5Vy5MkbLktdH8ek5wY8w68Ce3JmehysiqZFgPmTfPht5WjrirjDmHjkqyl?= =?us-ascii?Q?aoBvuIfwW3atRagPkNiQEGefGYEzigl9iASGQDIimzeNeEPXTZRGRdYmrkM3?= =?us-ascii?Q?ZMUZiXFy7puFKRShU5mhpeGiIOj8q/unjYtQgN0kyhhgth/wgIw0XKawRWWM?= =?us-ascii?Q?99pfIzobSZQWciIHeUR5+q5BjjKuUTxCIFLSzf3QJ8qWvoCQO7HjYvMYOJcZ?= =?us-ascii?Q?WkdaL+wXtxBaO9OahJcsA8X6oj1CIqbCWnvqNUVcfAaQncY+Rjl8wo53gvxf?= =?us-ascii?Q?qw/GzzfdzfQSE/RzTXEERTFZ0iVO3SKNAFGCXpcaz6rhIVjU4EFGr4sWGXKy?= =?us-ascii?Q?5hEMTWg9D9RSVgcltvJnFIZh59z2aNYiCmt4T9h3SwlnzcahTmGR0Eq8qZPJ?= =?us-ascii?Q?tqwXvdiFQGeQ2YzU/sSD2+Roxv0XvcBQoiSMDp6OxHNHQz7Os6YSeG/MGhCO?= =?us-ascii?Q?uT7frsMrnZkYFvxEDMMEE2k2eCg4So+mn+lBSOUV91P4zbRSOmykijBQm9Qo?= =?us-ascii?Q?L7qi0fdO6ut2r3KQmooPPHigtpNeHEZ6HIBoDATgmkhIZELV4P49AR+EkJ+A?= =?us-ascii?Q?IsjmDuvqGt31R5uCCEilCzJyVIPPPnrqBDPEJe62XdFYB++g980nH0Txc6Vd?= =?us-ascii?Q?mW2H6THKtovumiE/uWhCBk0y+7Np1vjTdhjT5gliwwCqDdVaew1q+SkKfhda?= =?us-ascii?Q?+Ozasj9XVMrLahZbzjiw7x7GOrqwG+Rt0xcbso/4wW91mAnVZ6aZypIncEbk?= =?us-ascii?Q?sUlNVOi17k1Su8y+Vc0V1BOIebkReiZD1pjNlYkCk+SOC/83P4uljWMkvkvo?= =?us-ascii?Q?Q5v7Lft4xG5D6ox6UjAUeyJFZ8ZnY59gQMu289pA0XzqLGJ0RZBbaYbSD7g8?= =?us-ascii?Q?TW/AY0f+faEMl8xDUTPbK++PuVx/taRjfhp5Ay998Ow3dOwE73HvIfYRPY9D?= =?us-ascii?Q?RZyPqbmf9aRJLzQ3k+hef+B6HxKv9YpNIwsMeuX/6OyCiNLnKpzOZRVilYTr?= =?us-ascii?Q?qGNJYTGPGrHfQX8iKwPhYLuaFqAWnU9ts9337XN0?= 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: BL1PR11MB5304.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 27089cbf-dc2e-4c0a-0ed9-08dc8f1ed3b0 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Jun 2024 22:42:54.2756 (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: Dw2EjpzOUUQs+liNRTwrZU9Jcg5MKC4kq/zAxWpIrQtBUZNB+2jH4tgZxodB2NWcCrg6dd0TFMOLdrYAbJyRNExI8scv9IyKVj5ytX7/Ze4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR11MB6037 X-OriginatorOrg: intel.com List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > This is extremely workload dependent, it's not hard to find workloads wit= h > lots of very small record and very few big ones... What you observed mig= ht > have "just" been the warmup behaviour where more full page writes have to > be written. Can you tell me how to avoid capturing this "warm-up" so that the numbers a= re more accurate? =20 > There a very frequent call computing COMP_CRC32C over just 20 bytes, whil= e > holding a crucial lock. If we were to do introduce something like this > AVX-512 algorithm, it'd probably be worth to dispatch differently in case= of > compile-time known small lengths. So are you suggesting that we be able to directly call into the 64/32 bit b= ased algorithm directly from these known small byte cases in the code? I th= ink that we can do that with a separate API being exposed. > How does the latency of the AVX-512 algorithm compare to just using the > CRC32C instruction? I think I need more information on this one as I am not sure I understand t= he use case? The same function pointer indirect methods are used with or wi= thout the AVX-512 algorithm? Paul