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 1rlBb7-000dWM-JJ for pgsql-hackers@arkaria.postgresql.org; Fri, 15 Mar 2024 17:44:02 +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 1rlBb6-00B7t9-2k for pgsql-hackers@arkaria.postgresql.org; Fri, 15 Mar 2024 17:44:00 +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 1rlBb5-00B7t1-CV for pgsql-hackers@lists.postgresql.org; Fri, 15 Mar 2024 17:44:00 +0000 Received: from mgamail.intel.com ([192.198.163.13]) by magus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rlBb1-004hBb-7z for pgsql-hackers@lists.postgresql.org; Fri, 15 Mar 2024 17:43:58 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1710524635; x=1742060635; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=rBn5mBWSHvPmy6ExChqHQ4bq3oK4daH9lMi8Qmh5AQU=; b=h25wv8yebU2Bs1G5UD2WZELSazKtXTPeCuyhIX3tqnsbymXge1OmTV1D eLRR0Avb0nJdmTr5nLnw9s2zZ/Wllq0x+53xxDlecYr++PU0GWwZnukLF agHBde1dAEKRYL1k5tnlL0JW5l/XjGohNFlULpTQ6sbaZJtfMyrMKQhtK WBQR5VL+GwJmZnlvLdHssemX0gKhQZ6RBQmO0slavQVR20eOprB3HScPJ B3MqHU46Q9NgQiAnn9CD43pbnxpsehtKEhiRoA1TY9PQXtCZZILLAm0xr Zq4hhEUt9iM8EOQ4CCzfSfIX8riWuzhme+VPUMOjV212vRJAGCQ8NeW61 g==; X-IronPort-AV: E=McAfee;i="6600,9927,11014"; a="8349046" X-IronPort-AV: E=Sophos;i="6.07,129,1708416000"; d="scan'208";a="8349046" Received: from fmviesa003.fm.intel.com ([10.60.135.143]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Mar 2024 10:43:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,129,1708416000"; d="scan'208";a="17349655" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmviesa003.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 15 Mar 2024 10:43:45 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Fri, 15 Mar 2024 10:43:43 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Fri, 15 Mar 2024 10:43:43 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.40) 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.2507.35; Fri, 15 Mar 2024 10:43:43 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KtpAgSf5gz4wlMyDnb1wfxs0YH2MBo4+Q0md4AJiHWUnIPGoeHg5BIHMQ6zeiTuiNastZ4z3zxOheLd7CizmvuXw5QLLIWttd9i3Np6eyZB766xAQhzVr6WS/PsTTnuS+w6qBnUYuFb2fmSxZfkhtPJlgTMVlrzV9I5gL7NgARY8opBGgOSrxVTIG/zjG6/KxbSRT7f/SI9D0C5y5i3ufTNi+eSbgqtXPP5OO8VTN1A3pbDulu31PabkiXhHdism+2LN4V/y2PeIlaCOxiISrskU43UkZgb5MmU/+3kfmUSE1YRcCvul0hJSQfuMj1dkoQRg/kn2eHJen/tTXhrK2g== 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=5IlFfPxbLebxwWtk2sMnwDDsUMPmwVO24vbc1YT5oZ8=; b=fIOeikxj+08rY5d1wzXHVbLWZ3zn0HQ0e4IuCGW0giPJfg0tKBE97zRwk1nB5HioYv185vcc1rEOfpTaBG5yjD5O8Cl+WW5PaKTFMeinYsnBMTV1t7C5BBnPhkgijkDNFNwf3lcgAMnGoy8uAZPyWpgtgPpSKvjnxQeY+JxomK7wSgBElfI5DlnZOrHTGa0WXWuEUzaXJrAkFLGRiVp37djeu4HJiuAJInr9IshalZ8/Ym3gRMeL6B3+8o90SFvFS1NyrBbt1haFKdtqpITPwkOq5mQIa77tVrtdRHLe+Zt/I+eOuZ+jeA92c6Xyq/iW1mKJ4OwIdHKJGtKc2vQPBA== 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 IA0PR11MB7881.namprd11.prod.outlook.com (2603:10b6:208:40b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.18; Fri, 15 Mar 2024 17:43:40 +0000 Received: from BL1PR11MB5304.namprd11.prod.outlook.com ([fe80::c936:ecdc:757e:1a4b]) by BL1PR11MB5304.namprd11.prod.outlook.com ([fe80::c936:ecdc:757e:1a4b%5]) with mapi id 15.20.7386.017; Fri, 15 Mar 2024 17:43:40 +0000 From: "Amonson, Paul D" To: "Amonson, Paul D" , Nathan Bossart CC: Andres Freund , Alvaro Herrera , "Shankaran, Akash" , Noah Misch , Tom Lane , "Matthias van de Meent" , "pgsql-hackers@lists.postgresql.org" Subject: RE: Popcount optimization using AVX512 Thread-Topic: Popcount optimization using AVX512 Thread-Index: AdoNliAXaie8RHrzTICrAiLVKKiYCgAsQKyAALaJTAAAAQ7nAAAAxSWAAAGNHgAAA/mZgAAeFdGAAZKQbBAAAw6egA3NuLcAAAvVM4ACbQuxsAAhlXkAAHPWMbAAAkOrAACYCUjgAAMc3wABvefW4AD8TV6wADf+AoAAmWkVgACOpocAAAl+RwAAJXNxYAAA1VoAAABadxAAZi2hAAAIeekAAMiJepAACPYvAAAbpMKQAJeTLYAAAHbzAAAEqdjQ Date: Fri, 15 Mar 2024 17:43:39 +0000 Message-ID: References: <20240304222118.GB3367383@nathanxps13> <20240305163730.GA3479896@nathanxps13> <20240307173318.GA455851@nathanxps13> <20240307213600.GA563369@nathanxps13> <20240312013436.GA1787866@nathanxps13> <20240315150611.GA3495582@nathanxps13> In-Reply-To: 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_|IA0PR11MB7881:EE_ x-ms-office365-filtering-correlation-id: ef86f8f2-29e3-4ca5-4742-08dc45177341 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: nfQugROg5LWcDtnF44AkIQErbUZ7d3XMhppEci3EZqR8d6OdMSkRA1LoiRGqpczYkS52gnyUqpvC6KtoXG12C041/Z6EcBiiNS2LM0yxwKRaVqOxuAN9JS4J3pCJwAelEwxVfLi2M83t1LfgkEZaZx+wxvYysBNKn2oG3+zlHOeYou2y7bcWUO/igZetYgzpZYDLqj3dv7eS0kcQBkNlIrQ1QYY/t2djx5H8bj9oYTI7RwoU0OD452ChEHbGwwB65rrZirToBGN7UcD7hBeqr0+lrE1bSiLq24Otp6AsKb+HIBrR+FFrsd7a+IoyyDd0TB19HXOwFc4/aJMLpsNvT5FUKIPvu33YTRUKU2SZWCjI2AUSBrKtP+ZIB1JSHbNR0ezQM/sDrPGG0mYyuTnweYrDdIDKtJq/peYXv4dcKyxM8eYWlWPV/MqepP18JwJLCKxejnu+6rDG19HmOf1yA+crr5FoP7yqA/ArE+GZaYp39PTp8dcqJ8rKb5EvxduZ439lHjEqLE/oX+ijDsBCUre3JAS+YNDG5Vw6BrPWAj32WByIGZBgADFrd2tzlCs0YBjAta8xvGdm70yAShIoRygjP627gXSb6nLR9LJ2bErSFwQWDEkrIdNc+/RWXvC1/9bPZeF6oG8gAfp+Kg3R6EJLKBZqeHWJfHdCoagDkea64ADsuv6nuOFtAk1L5QKl1BiXx9Z9QdSTHb0f8tEKffZiy45cghOdl1NuVrVGg/Y= 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:(13230031)(376005)(366007)(1800799015)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?HWpBuL13oN5VzvLe7VYDPcZ1Iyk0VQ8DgfD7csQFOaGOmN/KS5Bk78KA9FAw?= =?us-ascii?Q?Ke5wW215bBadejVb5IQHENvbBinrxW0PLRZIU2eaN4DlAR8rNqtalObxWSwj?= =?us-ascii?Q?OWSwx7KNX16yfWQhNs24a31yAtSdtA83c5ReoC2iiKvRHZurncd0Tjij2823?= =?us-ascii?Q?7P9Ze/actrII1RLCWhEoLBO4cBHRtBuxIBvZpGcoQiIXQ6dQc/I64x63tuf2?= =?us-ascii?Q?9ONf4QGx3T6DRQy8mh/TWWCPwnruJP4FDExzYsIggwRvWRkxqicMdyqlXuoE?= =?us-ascii?Q?qjsEnYroV7Dl5WBvtdVefZpj4ENUxNBb4HIWvVWGVSnL/JPjvsxTSlJHdtZ9?= =?us-ascii?Q?KbvwVanmh4jhguUFL3ImTjBEXh4LWl7PMN+2jde2XNV9oCz9ieDBAgSCw/iX?= =?us-ascii?Q?/E2FTLyKGEdG1DWUxpcQjhGYuBhMl//FBDRHuGEltvXRHG7GUjQvOo09X4F/?= =?us-ascii?Q?klFrcYd6+CCriiu9Ip4553txiWlUvRizR1/6WBKLsojwjy02SW8OBaYuPzYZ?= =?us-ascii?Q?WhiusSiODxN67+OoCO4NEtoK5u7QX7dv7xOX5ToZ1Ri1MAIg4JfX3vXndRfK?= =?us-ascii?Q?X6mOiHSRJDd0UMKQuiuQKeH22dZmh7tgTmxPGvme8U1xofEg3Vs5S3gT4zx1?= =?us-ascii?Q?RN8o3/+cLrQVwcVKaw0rZk8yFYCf5nLV8YZEsxyrVv2tsL7BIHrM1+lawN/N?= =?us-ascii?Q?LYE86kcotKHHiXoOwSO0kTfSQ22QyA97lIYnQi/HHG+2ypDx3uFuD6Qn939+?= =?us-ascii?Q?dgqs9g+ZHDSI8CF8abkD8SykdpNzJYf+o4maugP+bu32j0GOwy4/V54bs1dn?= =?us-ascii?Q?TXmg8lhgLeowJhGvPKsPyMkFHsZBcVLSe/Aj+MXlCWvGdHtI0gNkEEDh5l6d?= =?us-ascii?Q?PlC3m5pwFUTDiSG6bN2VVU4uBDU+UhMSBVBm6wWH9m+e/n/6U2YtVPKQ7o9M?= =?us-ascii?Q?VKsLrnuT9lHxvh+xr2G43Gz290MiCzPb3OLIAfm9byt4DNrFjlHjz7HMko5z?= =?us-ascii?Q?UcKQCxXzLAjrntTjgUVdqibWWZRwXnO+bbjHLvXbd47mGVTRN+SedQA4kSPd?= =?us-ascii?Q?TaXJvpwSWszB6TJ7OOtZNbqk1RpB70sl9X2rn+0QSaLv9NBLU3OMex4EgMpc?= =?us-ascii?Q?vIJ07qY7oPaxLEkDueArAmoscRR/1uWyj5d+Y8OsSyayl1fnRti5SrarXqKd?= =?us-ascii?Q?W/7/CMFq21gr5+aSo6eG2kEbvqLSWMuOMxvGpph9GElDmmunqahGISqyfD+f?= =?us-ascii?Q?oj1sZL8bgUq3PvpW+hnWKiFlvNzYkSP8oduRlBKPBdinzqKp2Gq7lTAgDIiL?= =?us-ascii?Q?4dmBPIEZfzECMxZrZymEPQX2HG30ha1Gpk4etqYuO9vxP+nppWpbkZHQ0bOf?= =?us-ascii?Q?cLdD3Ibfi7nGtdEg9++ALmvZc11mJGe7CoH/FZLIP+8GXzhAfsEDKiLn1b9s?= =?us-ascii?Q?dB7PX+HKETCsEPYbjsxjHup2IukOUq2kMuQEHiyhtXqLOEwkpL5E+Dpd0zoH?= =?us-ascii?Q?OLBeUZ9VmFi7iISxenJYMlESJSgEjXYNhxuVhNO6X+MWFQjTXayc1uOztY1B?= =?us-ascii?Q?obcxxt3lCaTNtadmiZQ/Ik75MWtDLL0ys7LC6c5d?= 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: ef86f8f2-29e3-4ca5-4742-08dc45177341 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Mar 2024 17:43:39.9735 (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: 64q5kerKTDzUilmgJLtENBJ3xleOdhG1H7WYzZyxSE63CHRH+ScwGLqoO2cAyHSx+NNIrfg7g+jRY1ehqYvE506dPjfAJiy5K2qeeMTGn8M= X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR11MB7881 X-OriginatorOrg: intel.com List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > -----Original Message----- > From: Amonson, Paul D > Sent: Friday, March 15, 2024 8:31 AM > To: Nathan Bossart ... > When I tested the code outside postgres in a micro benchmark I got 200- > 300% improvements. Your results are interesting, as it implies more than > 300% improvement. Let me do some research on the benchmark you > referenced. However, in all cases it seems that there is no regression so= should > we move forward on merging while I run some more local tests? When running quick test with small buffers (1 to 32K) I see up to about a 7= 40% improvement. This was using my stand-alone micro benchmark outside of P= G. My original 200-300% numbers were averaged including sizes up to 512MB w= hich seems to not run as well on large buffers. I will try the referenced = micro benchmark on Monday. None of my benchmark testing used the command li= ne "time" command. For Postgres is set "\timing" before the run and for the= stand-alone benchmark is took timestamps in the code. In all cases I used = -O2 for optimization. Thanks, Paul