[gull] Parallelize Postgresql request

Marc SCHAEFER schaefer at alphanet.ch
Mon Oct 14 09:30:57 CEST 2024


On Sat, Oct 12, 2024 at 09:46:40PM +0200, Marc SCHAEFER via gull wrote:
> Donc c'est bien en direction de l'optimiseur qu'il faut probablement
> regarder, tout en étant conscient que l'exemple ci-dessus est tiré
> par les cheveux.

Très concrètement (sur une machine avec des vieux disques et qui est
assez chargée en I/O):

schaefer at shakotay:~$ time psql template1 -c 'SELECT COUNT(*) FROM pg_class a, pg_class b, pg_class c;'; time psql template1 -c 'SET min_parallel_table_scan_size = 0; SELECT COUNT(*) FROM pg_class a, pg_class b, pg_class c;'
  count   
----------
 57512456
(1 row)


real    0m8.961s
user    0m0.101s
sys     0m0.012s

  count   
----------
 57512456
(1 row)


real    0m6.951s
user    0m0.094s
sys     0m0.012s

On voit toutefois les CPUs travailler un peu dans le 2e cas, moins de
temps. Dans le 1er cas, un seul CPU travaille plus longtemps.

Mais c'est probablement pas mal I/O bound ici.


More information about the gull mailing list