X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id 7A5389DCDB0 for ; Fri, 24 Mar 2006 11:02:21 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 34173-06 for ; Fri, 24 Mar 2006 11:02:25 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey- Received: from mail.mi8.com (d01gw04.mi8.com [63.240.6.44]) by postgresql.org (Postfix) with ESMTP id 14FD99DCD9F for ; Fri, 24 Mar 2006 11:02:18 -0400 (AST) Received: from 172.16.1.112 by mail.mi8.com with ESMTP (- Welcome to Mi8 Corporation www.Mi8.com (D4)); Fri, 24 Mar 2006 10:02:17 -0500 X-Server-Uuid: C8FB4D43-1108-484A-A898-3CBCC7906230 Received: from MI8NYCMAIL06.Mi8.com ([172.16.1.160]) by D01SMTP02.Mi8.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 24 Mar 2006 10:02:17 -0500 Received: from 69.181.100.71 ([69.181.100.71]) by MI8NYCMAIL06.Mi8.com ( [172.16.1.219]) via Exchange Front-End Server mi8owa.mi8.com ( [172.16.1.106]) with Microsoft Exchange Server HTTP-DAV ; Fri, 24 Mar 2006 15:02:16 +0000 User-Agent: Microsoft-Entourage/11.2.3.060209 Date: Fri, 24 Mar 2006 07:02:15 -0800 Subject: Re: Scaling up PostgreSQL in Multiple CPU / Dual Core From: "Luke Lonergan" To: "Christopher Browne" , pgsql-performance@postgresql.org Message-ID: Thread-Topic: [PERFORM] Scaling up PostgreSQL in Multiple CPU / Dual Core Thread-Index: AcZO7BW6ms5ItFwPRG67q7a7SncUqQAZ9oI6 In-Reply-To: <87hd5olgyd.fsf@wolfe.cbbrowne.com> MIME-Version: 1.0 X-OriginalArrivalTime: 24 Mar 2006 15:02:17.0012 (UTC) FILETIME=[F0F53740:01C64F53] X-WSS-ID: 683AD67320C32886945-01-01 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=1.35 required=5 tests=[AWL=0.097, RCVD_NUMERIC_HELO=1.253] X-Spam-Score: 1.35 X-Spam-Level: * X-Archive-Number: 200603/499 X-Sequence-Number: 17936 Christopher, On 3/23/06 6:22 PM, "Christopher Browne" wrote: > Question: Does the Bizgress/MPP use threading for this concurrency? > Or forking? > > If it does so via forking, that's more portable, and less dependent on > specific complexities of threading implementations (which amounts to > non-portability ;-)). OK - I'll byte: It's process based, we fork backends at slice points in the execution plan. To take care of the startup latency problem, we persist sets of these backends, called "gangs". They appear, persist for connection scope for reuse, then are disbanded. > Most times Jan comes to town, we spend a few minutes musing about the > "splitting queries across threads" problem, and dismiss it again; if > there's the beginning of a "split across processes," that's decidedly > neat :-). :-) - Luke