Re: BUG #17448: In Windows 10, version 1703 and later, huge_pages doesn't work.

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
Cc: Julien Rouhaud <rjuju123(at)gmail(dot)com>, okano(dot)naoki(at)jp(dot)fujitsu(dot)com, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: BUG #17448: In Windows 10, version 1703 and later, huge_pages doesn't work.
Date: 2022-03-26 11:33:48
Message-ID: Yj76HKWAxZ66SGsc@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-hackers

On Sun, Mar 27, 2022 at 12:07:57AM +1300, Thomas Munro wrote:
> Some question I have: is FILE_MAP_LARGE PAGES a macro? We claim to
> support all those ancient zombie OSes like Windows 7, or maybe it's
> even XP for 11, and this has to be back-patched to 11, so we might
> need to make it conditional. But conditional on what? For example,
> does something like the attached work (untested)? What happens if a <
> 1703 kernel sees this flag, does it reject it or ignore it?

Good question. I would choose a soft approach here and not insist if
the flag was not known at compilation time, but we could also take a
more aggressive approach and hardcode a value. Anyway, it seems to me
that the correct solution here would be to compile the code with a
PG_FILE_MAP_LARGE_PAGES that checks if the flag exists at compile
time, and we would set it at run time if we know that we are on a
version of Windows that supports it. IsWindowsVersionOrGreater()
should be able to do the job.
--
Michael

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Vibhu Chauhan (iDEAS-ER&D) 2022-03-26 17:32:12 OpenSSL v1.1.1n in postgres
Previous Message Thomas Munro 2022-03-26 11:07:57 Re: BUG #17448: In Windows 10, version 1703 and later, huge_pages doesn't work.

Browse pgsql-hackers by date

  From Date Subject
Next Message Dilip Kumar 2022-03-26 12:25:20 Re: [Proposal] Fully WAL logged CREATE DATABASE - No Checkpoints
Previous Message Erik Rijkers 2022-03-26 11:29:30 Re: SQL/JSON: JSON_TABLE