Re: postgres processes spending most of their time in the

From: "Jeffrey W(dot) Baker" <jwbaker(at)acm(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: postgres processes spending most of their time in the
Date: 2001-12-28 19:18:03
Message-ID: Pine.LNX.4.33.0112281111140.23655-100000@windmill.gghcwest.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, 28 Dec 2001, Tom Lane wrote:

> "Jeffrey W. Baker" <jwbaker(at)acm(dot)org> writes:
> > I have a moderately loaded postgres server running 7.2beta4 (i wanted to
> > try out the live vacuum) that turns out to spend the majority of its cpu
> > time in kernel land. With only a handful of running processes, postgres
> > induces tens of thousands of context switches per second. Practically the
> > only thing postgres does with all this CPU time is semop() in a tight
> > loop.
>
> It sounds like you have a build that's using SysV semaphores in place of
> test-and-set instructions. That should not happen on x86 hardware,
> since we have assembly TAS code for x86. Please look at your port
> header file (src/include/pg_config_os.h symlink) and
> src/include/storage/s_lock.h to figure out why it's misbuilt.

Well, it seems that one of __i386__ or __GNUC__ isn't set at compile time.
I'm using GCC on i386 so I don't see how that is possible. It should be
safe for me to simply define these two things in pg_config.h, I suspect.

-jwb

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2001-12-28 19:29:49 Re: postgres processes spending most of their time in the kernel
Previous Message Tom Lane 2001-12-28 18:54:05 Re: [GENERAL] Problem (bug?) with like