From owner-freebsd-arch@FreeBSD.ORG Wed Oct 26 21:17:57 2005 Return-Path: X-Original-To: freebsd-arch@freebsd.org Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E150C16A423; Wed, 26 Oct 2005 21:17:57 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D4D743D45; Wed, 26 Oct 2005 21:17:57 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 6145D46B3C; Wed, 26 Oct 2005 17:17:56 -0400 (EDT) Date: Wed, 26 Oct 2005 22:17:56 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Peter Wemm In-Reply-To: <200510261410.23688.peter@wemm.org> Message-ID: <20051026221511.R31152@fledge.watson.org> References: <435EBD49.7090207@freebsd.org> <20051026120219.V32255@fledge.watson.org> <200510261410.23688.peter@wemm.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Marc Olzheim , Daniel Eischen , arch@freebsd.org, David Xu , freebsd-arch@freebsd.org Subject: Re: libc_r is deprecated X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Oct 2005 21:17:58 -0000 On Wed, 26 Oct 2005, Peter Wemm wrote: > This is pure computationally intensive program. It excercises the > locking mutexes. It certainly shows a worst-case for libthr and shows > how libpthread doesn't handle SMP scheduling well either. It is > especially embarresing because libc_r is a single process, while libthr > and libpthread are using two cpus concurrently. > > This is a good example of why libc_r should not be removed. We need it > to show baseline values. > > By all means, don't build it by default. But don't remove it entirely. Similar properties can be explored using "juggle" and "thr_pipeline", which look at the performance of IPC between threads, and the performance of pthread'd data processing pipelines in microbenchmark form: http://www.watson.org/~robert/freebsd/benchmarks/ juggle tries a number of IPC methods, and illustrates how some of them do better for bigger data operations, some for smaller, some on UP, some on SMP, etc. Robert N M Watson