Hi,

On 2025-05-05 15:07:01 -0400, Jonathan S. Katz wrote:
> ### Performance
>
> PostgreSQL 18 introduces an asynchronous I/O (AIO) subsystem using
> `io_uring` on Linux, which, when combined with direct I/O (DIO), lets
> PostgreSQL directly interface with storage interfaces. This new subsystem
> gives PostgreSQL the opportunity to maximize its usage of hardware transfer
> capacity, and this initial release supporting file system reads such as
> sequential scans, bitmap heap scans, and vacuums, with tests showing up to a
> 2-3x performance improvements.

This isn't quite right:

- AIO is usable on all platforms, it *optionally* can use io_uring on linux -
  the default is to use AIO using worker processes

- One can see substantial perf benefits *without* using direct IO - in fact,
  DIO remains a "developer oriented" option, because our use of AIO is too
  limited for it to be generally usable

  I think for now I would probably just not mention DIO. Hopefully we can make
  it more widely usable in 19.


How about something like:

PostgreSQL 18 introduces an asynchronous I/O (AIO) subsystem. This new
subsystem allows to increase I/O throughput and to hide I/O latency. On Linux
`io_uring` can be used for AIO, a worker based implementation is available on
all platforms. This initial release supporting file system reads such as
sequential scans, bitmap heap scans, and vacuums, with tests showing up to a
2-3x performance improvements.


Where's that 2-3x number from, btw? Depending on how narrow a case one is
looking at, it's possible to see bigger wins... But I'm not sure it's worth
looking too narrowly.


> ### Other Highlights
>
> Starting with PostgreSQL 18, data checksums, which are used to validate the 
> integrity of stored data, are now enabled by default on new PostgreSQL 
> clusters. You can choose to disable this behavior using the `initdb 
> --no-data-checksums` command.

Should we point out that this might require adjustments for upgrade scripts?
Probably not in the release announcement?

Greetings,

Andres Freund


Reply via email to