pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Markus Schaber <schabi@logix-tt.com>
To: Juan Casero (FL FLC) <Juan.Casero@wholefoods.com>
Cc: pgsql-performance@postgresql.org
Subject: Re: Sun Fire T2000 and PostgreSQL 8.1.3
Date: Thu, 06 Apr 2006 11:08:14 +0200
Message-ID: <4434DA7E.1030307@logix-tt.com> (raw)
In-Reply-To: <7583B3F1891CC0429FA4A44952AA539C66FA7E@wfm-exchprd2.wfm.pvt>
References: <7583B3F1891CC0429FA4A44952AA539C66FA7E@wfm-exchprd2.wfm.pvt>

Hi, Juan,

Juan Casero (FL FLC) wrote:
> Ok that is beginning to become clear to me.  Now I need to determine if
> this server is worth the investment for us.  Maybe it is not a speed
> daemon but to be honest the licensing costs of an SMP aware RDBMS is
> outside our budget.  When postgresql starts does it start up a super
> server process and then forks copies of itself to handle incoming
> requests? 

It starts a super server process (Postmaster) and some background
processes (background writer, stats collector). For each incoming
connection, the postmaster forks a single-threaded backend process,
which handles all queries and transactions on this connection, and
terminates when the connection terminates.

So as a thumb-rule, each connection can utilize only a single CPU. You
can utilize a few more CPUs than you have simultaneous connections, due
to the background processes and the OS needing CPU for I/O, but thats
rather marginal.

AFAIK, Bizgres MPP has extended the backend processes to be multi
threaded, so a single connection can utilize several CPUs for some types
of queries (large data sets, sorting/joining/hashing etc.). Btw, I
presume that they might offer you a free test license, and I also
presume their license fee is much lower than Oracle or DB/2.

> Or do I have to specify how many server processes should be
> started up? 

You can limit the number of server processes by setting the maximum
connection limit.

> I figured maybe I can take advantage of the multiple cpu's
> on this system by starting up enough postgres server processes to handle
> large numbers of incoming connections.  I have this server available for
> sixty days so I may as well explore the performance of postgresql on it.

Yes, you can take advantage if you have multiple clients (e. G. a wep
app, that's what the T2000 / Niagara were made for). You have a Tomcat
or Jboss sitting on it, each http connection forks its own thread. Each
customer has its own CPU :-)

Then use a connection pool to PostgreSQL, and you're fine. The more
customers, the more CPUs are utilized.

But beware, if you have floating point maths, it will be very slow. All
8 CPUs / 32 Threads share a single FPU. So if you need floating point
(e. G. Mapserver, PostGIS geoprocessing, Java2D chart drawing or
something), T2000 is not the right thing for you.


HTH,
Markus

-- 
Markus Schaber | Logical Tracking&Tracing International AG
Dipl. Inf.     | Software Development GIS

Fight against software patents in EU! www.ffii.org www.nosoftwarepatents.org



view thread (37+ messages)  latest in thread

Message-ID: <4434DA7E.1030307@logix-tt.com>
Permalink:  ../4434DA7E.1030307@logix-tt.com/
Also on:    postgresql.org/message-id/4434DA7E.1030307@logix-tt.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: schabi@logix-tt.com, Juan.Casero@wholefoods.com
  Subject: Re: Sun Fire T2000 and PostgreSQL 8.1.3
  In-Reply-To: <4434DA7E.1030307@logix-tt.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox