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.96) (envelope-from ) id 1vnHbM-004cQP-0a for pgsql-hackers@arkaria.postgresql.org; Tue, 03 Feb 2026 14:42:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vnHbK-00572T-0N for pgsql-hackers@arkaria.postgresql.org; Tue, 03 Feb 2026 14:41:57 +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.96) (envelope-from ) id 1vnHbJ-00572K-1L for pgsql-hackers@lists.postgresql.org; Tue, 03 Feb 2026 14:41:57 +0000 Received: from fout-a7-smtp.messagingengine.com ([103.168.172.150]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vnHbG-00000000qmC-252v for pgsql-hackers@lists.postgresql.org; Tue, 03 Feb 2026 14:41:56 +0000 Received: from phl-compute-12.internal (phl-compute-12.internal [10.202.2.52]) by mailfout.phl.internal (Postfix) with ESMTP id 31E51EC0074; Tue, 3 Feb 2026 09:41:52 -0500 (EST) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-12.internal (MEProxy); Tue, 03 Feb 2026 09:41:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=anarazel.de; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1770129712; x=1770216112; bh=g04QlDSYJy2nH4yCfAfws7IzuBj8WPL22TO7uQwGoL0=; b= aOFgFSx5jERkTicpx47X3wF3trletmVqs+2D9sakB7FF8bVTrMp2AuIQ7x8KAFsA pUEx+S2+2ht/cjcfkwjKpwWQ7mC0IeKGIuoj3AlT06m7ikbTOKZganrU3Na+XwnU iNfWjKFykASIem4rQyW0lusTlQywJMc6fsh1CyZhmXyBzdzQBeyP2XD+PM+iPgij 7C432ee63uKAGgu4pCPkqZ+hwrzUXx8R7MKeGWgnVlHoqQT1D2deK1Sdr43/DwFk 8/QPzg81Mmp+vI7lJGG0nS1n4uZ1FNpluxSIsR+x4VWJfMjgFVkpdJcKhOIvN7Mr eFRfNBvrEoJoAOijHru7rw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1770129712; x= 1770216112; bh=g04QlDSYJy2nH4yCfAfws7IzuBj8WPL22TO7uQwGoL0=; b=v SfmMl1DdCPEMyL2xx0lsEp+RDMc6Fo5ogM7WtRiYWpaJlkUnf/zbahQeTY9+KpRL zo/+uNuY5JI3wNaRpxLzoA1G/RkDEfOqVxzTbT8efIbmnU+/cXDZVfvXpwaP/D/+ QMch+cZkvoJiTMQMtjYSCGyCw8PG6dyze2PYIimsWFvxFLo1L4aM/zAzpseYn5V6 M7rLJmgLipBLN6FanNeasHABrdoHBynmKwUSHloQCfb+MnRwengiAjSQbYBjCzlf ikCX7VPEPYCVOemLSTAQ7oYaW/t51wheYZybvRmeIye049OsAEMg4SubBX1Ni4dS kzjWZ5QcrA+gvUTd7k94Q== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddukedtfeefucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucenucfjughrpeffhffvvefukfhfgggtugfgjgestheksf dttddtjeenucfhrhhomheptehnughrvghsucfhrhgvuhhnugcuoegrnhgurhgvshesrghn rghrrgiivghlrdguvgeqnecuggftrfgrthhtvghrnheptdelledvgfejvdffieeukeefue elfffhgeffhffgffekveeuheeihefhiefghfdvnecuvehluhhsthgvrhfuihiivgeptden ucfrrghrrghmpehmrghilhhfrhhomheprghnughrvghssegrnhgrrhgriigvlhdruggvpd hnsggprhgtphhtthhopeegpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopegughhr ohiflhgvhihmlhesghhmrghilhdrtghomhdprhgtphhtthhopehjohhhnhgtnhgrhihloh hrlhhssehgmhgrihhlrdgtohhmpdhrtghpthhtoheplhhirdgvvhgrnhdrtghhrghosehg mhgrihhlrdgtohhmpdhrtghpthhtohepphhgshhqlhdqhhgrtghkvghrsheslhhishhtsh drphhoshhtghhrvghsqhhlrdhorhhg X-ME-Proxy: Feedback-ID: id4a34324:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 3 Feb 2026 09:41:51 -0500 (EST) Date: Tue, 3 Feb 2026 09:41:51 -0500 From: Andres Freund To: John Naylor Cc: David Rowley , Chao Li , PostgreSQL Developers Subject: Re: More speedups for tuple deformation Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi, On 2026-02-03 12:24:39 +0700, John Naylor wrote: > On Tue, Feb 3, 2026 at 7:33 AM Andres Freund wrote: > > It's somewhat scary to see this level of code size increase in a case where > > the compiler really has no information to think vectorizing really is > > beneficial... > > I tried building on gcc 15.2 with -fno-tree-loop-vectorize, and the > server .text segment was only 5kB smaller, but that may understate the > impact on the decisions that get made. 5kB of instructions isn't nothing. But I guess the fact that most of our loops are too complicated might be protecting us :) > Maybe it's better to opt in for unrolling and vectorization? I think I'd go for opting out. There's too many cases where it's going to be hard to see the optimization potential, e.g. due to inlining etc. I do think we probably should add an evolved version of those pragma macros I showed (including perhaps also ones hinting the other way), and use them in the places we manually analyzed... Greetings, Andres Freund