Re: Large block sizes support in Linux

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Large block sizes support in Linux
Дата
Msg-id Zf3R7YOcuHncq6cq@momjian.us
обсуждение исходный текст
Ответ на Large block sizes support in Linux  ("Pankaj Raghav (Samsung)" <kernel@pankajraghav.com>)
Ответы Re: Large block sizes support in Linux  (Tomas Vondra <tomas.vondra@enterprisedb.com>)
Список pgsql-hackers
On Thu, Mar 21, 2024 at 06:46:19PM +0100, Pankaj Raghav (Samsung) wrote:
> Hello, 
> 
> My team and I have been working on adding Large block size(LBS)
> support to XFS in Linux[1]. Once this feature lands upstream, we will be
> able to create XFS with FS block size > page size of the system on Linux.
> We also gave a talk about it in Linux Plumbers conference recently[2]
> for more context. The initial support is only for XFS but more FSs will
> follow later.
> 
> On an x86_64 system, fs block size was limited to 4k, but traditionally
> Postgres uses 8k as its default internal page size. With LBS support,
> fs block size can be set to 8K, thereby matching the Postgres page size.
> 
> If the file system block size == DB page size, then Postgres can have
> guarantees that a single DB page will be written as a single unit during
> kernel write back and not split.
> 
> My knowledge of Postgres internals is limited, so I'm wondering if there
> are any optimizations or potential optimizations that Postgres could
> leverage once we have LBS support on Linux?

We have discussed this in the past, and in fact in the early years we
thought we didn't need fsync since the BSD file system was 8k at the
time.

What we later realized is that we have no guarantee that the file system
will write to the device in the specified block size, and even it it
does, the I/O layers between the OS and the device might not, since many
devices use 512 byte blocks or other sizes.

-- 
  Bruce Momjian  <bruce@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Only you can decide what is important to you.



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: pg_upgrade --copy-file-range
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: documentation structure