Re: How to set parallel_tuple_cost
Tom Lane <[email protected]> Fri, 20 Dec 2019 13:58:57 -0500
| Newsgroups | gmane.comp.db.postgresql.performance |
|---|---|
| Message-ID | <[email protected]> |
Jeff Janes <[email protected]> writes: > The docs for parallel_tuple_cost are quite terse, as the reference section > of the docs usually are: > "Sets the planner's estimate of the cost of transferring one tuple from a > parallel worker process to another process. The default is 0.1." > If you were take the doc description literally, then the default value > seems much too high, as it doesn't take 10x the (default) cpu_tuple_cost to > transfer a tuple up from a parallel worker. Really? If anything, I'd have thought it might be worse than 10x. Cross-process communication isn't cheap, at least not according to my instincts. > On the other hand, you > probably don't want a query which consumes 8x the CPU resources just to > finish only 5% faster (on an otherwise idle server with 8 CPUs). Maybe > this Amdahl factor is what inspired the high default value? I think the large value of parallel_setup_cost is what's meant to discourage that scenario. regards, tom lane