pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Richard Huxton <dev@archonet.com>
To: creimer@brturbo.com.br
Cc: pgsql-performance@postgresql.org
Subject: Re: Context switch storm
Date: Fri, 03 Nov 2006 12:52:05 +0000
Message-ID: <454B3B75.6@archonet.com> (raw)
In-Reply-To: <efc1d7c07cf.454afe8d@brturbo.com.br>
References: <efc1d7c07cf.454afe8d@brturbo.com.br>

creimer@brturbo.com.br wrote:
> Hi,
> 
> We've migrated one of our servers from pg 7.4 to 8.1 and from times
> to times (4 hours) the server start doing a lot of context switching
> and all transactions become very slow.
> 
> The average context switching for this server as vmstat shows is 1
> but when the problem occurs it goes to 250000.
> 
> CPU and memory usage are ok.
> 
> What is producing this context switching storms?
 >
> It is a box with 16GB RAM and 4 XEON processors running RedHat
> Enterprise Linux AS.

It's memory bandwidth issues on the older Xeons. If you search the 
archives you'll see a lot of discussion of this. I'd have thought 8.1 
would be better than 7.4 though.

You'll tend to see it when you have multiple clients and most queries 
can use RAM rather than disk I/O. My understanding of what happens is 
that PG requests data from RAM - it's not in cache so the process gets 
suspended to wait. The next process does the same, with the same result. 
   You end up with lots of processes all fighting over what data is in 
the cache and no-one gets much work done.

> Should I disable Hyperthreading?

I seem to remember that helps, but do check the mailing list archives 
for discussion on this.

If you can keep your numbers of clients down below the critical level, 
you should find the overall workload is fine. The problem is of course 
that as the context-switching increases, each query takes longer which 
means more clients connect, which increases the context-swtching, which 
means...

HTH
-- 
   Richard Huxton
   Archonet Ltd



view thread (22+ messages)  latest in thread

Message-ID: <454B3B75.6@archonet.com>
Permalink:  ../454B3B75.6@archonet.com/
Also on:    postgresql.org/message-id/454B3B75.6@archonet.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: dev@archonet.com, creimer@brturbo.com.br
  Subject: Re: Context switch storm
  In-Reply-To: <454B3B75.6@archonet.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