Re: Two Necessary Kernel Tweaks for Linux Systems

From: Richard Neill <rn214(at)richardneill(dot)org>
To: sthomas(at)optionshouse(dot)com
Cc: "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org>
Subject: Re: Two Necessary Kernel Tweaks for Linux Systems
Date: 2013-01-03 00:47:22
Message-ID: 50E4D51A.5060304@richardneill.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Dear Shaun,

Thanks for that - it's really interesting to know.

On 02/01/13 21:46, Shaun Thomas wrote:
> Hey everyone!
>
> After much testing and hair-pulling, we've confirmed two kernel
> settings that should always be modified in production Linux systems.
> Especially new ones with the completely fair scheduler (CFS) as
> opposed to the O(1) scheduler.

Does it apply to all types of production system, or just to certain
workloads?

For example, what happens when there are only one or two concurrent
processes? (i.e. there are always several more CPU cores than there are
actual connections).

> * sched_autogroup_enabled
>
> This is a relatively new patch which Linus lauded back in late 2010.
> It basically groups tasks by TTY so perceived responsiveness is
> improved. But on server systems, large daemons like PostgreSQL are
> going to be launched from the same pseudo-TTY, and be effectively
> choked out of CPU cycles in favor of less important tasks.

I've got several production servers using Postgres: I'd like to squeeze
a bit more performance out of them, but in all cases, one (sometimes
two) CPU cores are (sometimes) maxed out, but there are always several
cores permanently idling. So does this apply here?

Thanks for your advice,

Richard

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Daniel Westermann 2013-01-03 13:30:42 FW: performance issue with a 2.5gb joinded table
Previous Message Shaun Thomas 2013-01-02 21:46:25 Two Necessary Kernel Tweaks for Linux Systems