From owner-freebsd-questions@FreeBSD.ORG Mon Jun 30 10:14:57 2008 Return-Path: Delivered-To: questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8F43A1065676 for ; Mon, 30 Jun 2008 10:14:57 +0000 (UTC) (envelope-from kris@FreeBSD.org) Received: from weak.local (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id C655F8FC15; Mon, 30 Jun 2008 10:14:56 +0000 (UTC) (envelope-from kris@FreeBSD.org) Message-ID: <4868B21D.9040105@FreeBSD.org> Date: Mon, 30 Jun 2008 12:14:53 +0200 From: Kris Kennaway User-Agent: Thunderbird 2.0.0.14 (Macintosh/20080421) MIME-Version: 1.0 To: alex@schnarff.com References: <20080629222123.n0rgkjka50c084k4@mail.schnarff.com> In-Reply-To: <20080629222123.n0rgkjka50c084k4@mail.schnarff.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: questions@freebsd.org Subject: Re: Too Much Context Switching? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 30 Jun 2008 10:14:57 -0000 alex@schnarff.com wrote: > I'm the webmaster for www.marssociety.org, which is a FreeBSD > 6.2-RELEASE box running on a dual-core AMD Opteron setup with 4GB of > RAM. The box is reasonably busy, as it's the sole piece of hardware > running web, database, and mail operations for the Mars Society, an > international nonprofit group dedicated to space exploration. We > regularly send out newsletters to ~10,000 members, and our web site is > averaging ~50,000-100,000 hits/day. > > The main portion of the web site is run via the Zope/Plone CMS system > (Plone 2.5, for anyone who may care). Recently, it's been slowing down > dramatically, and our Plone guy (not me -- I inherited the system and > can't stand it) can't figure out why. I've been diving into OS-related > issues, and in so doing, I ran across what appears to be a very high > number of context switches going on. Here's some sample output from > "vmstat 2": A few hundred or thousand context switches per second is trivial load. That is not your problem. Modern CPUs can do hundreds of thousands per second before it starts to become a problem. Note that your system is 50% idle and spending almost no time in the kernel. This basically means that only one core is doing work, which might be because you're not giving it enough work to do. There are only 1-2 running tasks for most of your trace, one of which is probably vmstat itself, so that means there is only one running server process (which can obviously only saturate at most 1 CPU). The trace suggests that your performance problems are either in userland, or elsewhere in your network or application stack, possibly due to interactions between components. Try to look at why the system is not being given enough work to keep it saturated. Kris