Re: Sort functions with specialized comparators
John Naylor <johncnaylorls@gmail.com>
From: John Naylor <johncnaylorls@gmail.com>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: "Andrey M. Borodin" <x4mmm@yandex-team.ru>, David Rowley <dgrowleyml@gmail.com>, Антуан Виолин <violin.antuan@gmail.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2025-01-07T04:57:45Z
Lists: pgsql-hackers
On Tue, Jan 7, 2025 at 12:47 AM Nathan Bossart <nathandbossart@gmail.com> wrote: > > On Mon, Jan 06, 2025 at 05:54:29PM +0700, John Naylor wrote: > > Those functions from common/int.h are probably not good when inlined > > (see comment there). > > +1. In fact, I think this comment was added because of the ST_MED3() > function in sort_template.h [0]. IIRC clang handles this just fine, but > gcc does not. > > [0] https://postgr.es/m/20240212230423.GA3519%40nathanxps13 Yeah. If it were just med3, it would probably be okay, but I remember earlier experiments (also gcc) where branch-free comparators seemed to not work well with our partitioning scheme. -- John Naylor Amazon Web Services
Commits
-
Specialize intarray sorting
- 53d3daa491be 18.0 landed
-
Replace insertion sort in contrib/intarray with qsort().
- 8d1f239003d0 9.5.0 cited