From owner-freebsd-arch@FreeBSD.ORG Tue Jan 13 06:54:03 2009 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4B1C7106576E for ; Tue, 13 Jan 2009 06:54:03 +0000 (UTC) (envelope-from delphij@delphij.net) Received: from tarsier.delphij.net (delphij-pt.tunnel.tserv2.fmt.ipv6.he.net [IPv6:2001:470:1f03:2c9::2]) by mx1.freebsd.org (Postfix) with ESMTP id E53168FC0A for ; Tue, 13 Jan 2009 06:54:02 +0000 (UTC) (envelope-from delphij@delphij.net) Received: from tarsier.geekcn.org (tarsier.geekcn.org [211.166.10.233]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tarsier.delphij.net (Postfix) with ESMTPS id 305F828448 for ; Tue, 13 Jan 2009 14:54:02 +0800 (CST) Received: from localhost (tarsier.geekcn.org [211.166.10.233]) by tarsier.geekcn.org (Postfix) with ESMTP id BD0C4EC46D5; Tue, 13 Jan 2009 14:54:01 +0800 (CST) X-Virus-Scanned: amavisd-new at geekcn.org Received: from tarsier.geekcn.org ([211.166.10.233]) by localhost (mail.geekcn.org [211.166.10.233]) (amavisd-new, port 10024) with ESMTP id k5dS2PUE9T2d; Tue, 13 Jan 2009 14:53:56 +0800 (CST) Received: from charlie.delphij.net (c-67-188-86-134.hsd1.ca.comcast.net [67.188.86.134]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tarsier.geekcn.org (Postfix) with ESMTPSA id 60F98EC46C8; Tue, 13 Jan 2009 14:53:55 +0800 (CST) DomainKey-Signature: a=rsa-sha1; s=default; d=delphij.net; c=nofws; q=dns; h=message-id:date:from:reply-to:organization:user-agent: mime-version:to:cc:subject:references:in-reply-to: x-enigmail-version:openpgp:content-type:content-transfer-encoding; b=Nn7dbsD/ZeyFcupANR2rkGAiCWGD5rw6bou1Oy64OusLG9fwMrP3E/Ku1zYPJJPXc GHiQsMC4E6xMAERwU9bqQ== Message-ID: <496C3A80.5040007@delphij.net> Date: Mon, 12 Jan 2009 22:53:52 -0800 From: Xin LI Organization: The FreeBSD Project User-Agent: Thunderbird 2.0.0.19 (X11/20090112) MIME-Version: 1.0 To: =?UTF-8?B?RGFnLUVybGluZyBTbcO4cmdyYXY=?= References: <4966B5D4.7040709@delphij.net> <86zlhw5zsr.fsf@ds4.des.no> In-Reply-To: <86zlhw5zsr.fsf@ds4.des.no> X-Enigmail-Version: 0.95.7 OpenPGP: id=18EDEBA0; url=http://www.delphij.net/delphij.asc Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: d@delphij.net, freebsd-arch@FreeBSD.org Subject: Re: RFC: MI strlen() X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: d@delphij.net List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jan 2009 06:54:05 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Dag-Erling Smørgrav wrote: > Xin LI writes: >> Here is a new implementation of strlen() which employed the bitmask >> skill in order to achieve better performance on modern hardware. > > Why bother? Do we have code that uses strlen() heavily in performance- > critical regions? Does anybody? I agree that strlen() should never be used in performance-sensitive regions, but given we do not have assembly optimized versions of these functions for amd64 and almost everybody else has it, having a C version that gives similar performance is valuable. Also, worldstone with -j9 on 2x4core machine with both src/ and obj/ in tmpfs, seems to have small, but positive effect: Unpatched libc: 1400.97 real 4159.34 user 2901.08 sys 1396.73 real 4159.06 user 2906.16 sys 1380.27 real 4158.20 user 2803.22 sys Patched libc: 1363.29 real 4154.89 user 2749.94 sys 1373.96 real 4150.45 user 2830.46 sys 1368.62 real 4152.48 user 2838.52 sys (with 'make cleanworld' between builds) Cheers, - -- Xin LI http://www.delphij.net/ FreeBSD - The Power to Serve! -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) iEYEARECAAYFAklsOoAACgkQi+vbBBjt66COQgCfTmpQK9YliCxpdJkckJ2/cZim NzEAoKRqC2HN1FtKRWaZhstYyVjYeewr =eeea -----END PGP SIGNATURE-----