Re: Parallel Seq Scan vs kernel read ahead

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Ranier Vilela <ranier.vf@gmail.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-05-21T02:31:37Z
Lists: pgsql-hackers
On Thu, May 21, 2020 at 1:38 PM Ranier Vilela <ranier.vf@gmail.com> wrote:
>> >> On Thu, May 21, 2020 at 11:15 AM Ranier Vilela <ranier.vf@gmail.com> wrote:
>> >> > postgres=# set max_parallel_workers_per_gather = 0;
>> >> > Time: 227238,445 ms (03:47,238)
>> >> > postgres=# set max_parallel_workers_per_gather = 1;
>> >> > Time: 138027,351 ms (02:18,027)

> Vanila Postgres (latest)
>
> create table t as select generate_series(1, 800000000)::int i;
>  set max_parallel_workers_per_gather = 0;
> Time: 210524,317 ms (03:30,524)
> set max_parallel_workers_per_gather = 1;
> Time: 146982,737 ms (02:26,983)

Thanks.  So it seems like Linux, Windows and anything using ZFS are
OK, which probably explains why we hadn't heard complaints about it.



Commits

  1. Allocate consecutive blocks during parallel seqscans