On Wed, 2008-09-10 at 00:02 -0600, Scott Marlowe wrote:
Unless you have either a small data set or a very powerful RAID array, most the time you won't be CPU bound anyway. But it would be nice to see some work come out to parallelize some of the work done in the back end.
I would have agreed with this several years ago, but many folks now buy enough RAM to reduce the impact of IO. We're routinely CPU-bound on small queries, and even on some large ones, on a 32GB / 16-core Opteron box that serves a ~200GB database (on disk tables+indexes).
Does anyone know of research/references on query optimizers that include parallelization as part of the cost estimate? I can envision how PostgreSQL might parallelize a query plan that was optimized with an assumption of one core. However, I wonder whether cpu and io costs are sufficient for efficient parallel query optimization -- presumably contention for memory (for parallel sorts, say) becomes critical.
-Reece