From owner-cvs-src@FreeBSD.ORG Wed Jun 6 06:28:13 2007 Return-Path: X-Original-To: cvs-src@freebsd.org Delivered-To: cvs-src@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 18F4816A46C; Wed, 6 Jun 2007 06:28:13 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail04.syd.optusnet.com.au (mail04.syd.optusnet.com.au [211.29.132.185]) by mx1.freebsd.org (Postfix) with ESMTP id A3C5913C48C; Wed, 6 Jun 2007 06:28:12 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c220-239-235-248.carlnfd3.nsw.optusnet.com.au [220.239.235.248]) by mail04.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id l566Rx7B021999 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 6 Jun 2007 16:28:02 +1000 Date: Wed, 6 Jun 2007 16:28:01 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Jeff Roberson In-Reply-To: <20070605195839.I606@10.0.0.1> Message-ID: <20070606154548.F3105@besplex.bde.org> References: <200706051420.l55EKEih018925@repoman.freebsd.org> <3bbf2fe10706050829o2d756a4cu22f98cf11c01f5e4@mail.gmail.com> <3bbf2fe10706050843x5aaafaafy284e339791bcfe42@mail.gmail.com> <200706051230.21242.jhb@freebsd.org> <20070606094354.E51708@delplex.bde.org> <20070605195839.I606@10.0.0.1> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: src-committers@freebsd.org, John Baldwin , cvs-src@freebsd.org, cvs-all@freebsd.org, Attilio Rao , Bruce Evans , Kostik Belousov Subject: Re: cvs commit: src/sys/kern kern_mutex.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jun 2007 06:28:13 -0000 On Tue, 5 Jun 2007, Jeff Roberson wrote: > On Wed, 6 Jun 2007, Bruce Evans wrote: > >> On Tue, 5 Jun 2007, John Baldwin wrote: >>> If this is the old #ifndef PREEMPTION manual preemption stuff, then just >>> remove it. I've been wanting to axe it for a while, rwlocks don't do the >>> manual preemption either, and if it is getting in the way it's best to >>> just >>> purge it. >> >> Interesting, I've been wanting to do the opposite -- axe the #ifdef >> PREEMPTION in a different place, in pagezero, since non-manual preemption >> doesn't actually work for SCHED_4BSD (it works for SCHED_ULE, but last >> time I checked, SCHED_ULE was 7% slower for my makeworld benchmark >> since it lets CPUs go idle when there is a runnable process in the >> hope of a better CPU to run on becoming available). My SMP kernel >> that crashes has this ifdef removed. However, the crash doesn't >> seem to be caused by pgzero. > > You should try with kern.sched.pick_pri = 0. I have changed this to be the > default recently. This weakens the preemption and speeds up some workloads. I haven't tried a new SCHED_ULE kernel yet. > Are you still experiencing a crash with -current sources? It works now. Performance for compiling in parallel is down a little. A bit over 2% relative to my best ever makeworld time which was with a June 4 kernel. This seems to have something to do with the preemption without PREEMPTION being too weak now. Bruce