From owner-freebsd-current@FreeBSD.ORG Mon Jan 3 19:41:34 2005 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6CEF716A4CE for ; Mon, 3 Jan 2005 19:41:34 +0000 (GMT) Received: from spider.deepcore.dk (cpe.atm2-0-53484.0x50a6c9a6.abnxx9.customer.tele.dk [80.166.201.166]) by mx1.FreeBSD.org (Postfix) with ESMTP id B01A643D31 for ; Mon, 3 Jan 2005 19:41:33 +0000 (GMT) (envelope-from sos@DeepCore.dk) Received: from [194.192.25.143] (laptop.deepcore.dk [194.192.25.143]) by spider.deepcore.dk (8.12.11/8.12.10) with ESMTP id j03JfS65049451; Mon, 3 Jan 2005 20:41:30 +0100 (CET) (envelope-from sos@DeepCore.dk) Message-ID: <41D99FBD.8070500@DeepCore.dk> Date: Mon, 03 Jan 2005 20:40:45 +0100 From: =?ISO-8859-1?Q?S=F8ren_Schmidt?= User-Agent: Mozilla Thunderbird 0.7.2 (X11/20040802) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Nate Lawson References: <41D984A5.7010408@root.org> In-Reply-To: <41D984A5.7010408@root.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable X-mail-scanned: by DeepCore Virus & Spam killer v1.4 cc: FreeBSD Current Subject: Re: ATA rman performance enhancement X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jan 2005 19:41:34 -0000 Nate Lawson wrote: > While doing some benchmarking of other code, I noticed that there were = a=20 > lot of calls to rman_get_bustag/handle(). They weren't taking up much = > actual time since they're pretty lightweight but seemed to be unnecessa= ry. >=20 > I worked up the attached diff and benchmarked it. There are about 1000= =20 > calls a second to the rman routines without this patch and essentially = > none with it. It makes about a 1% difference in throughput under some = > IO loads. It is only for non-Promise or non-SII controllers right now = > since I didn't extend the initialization step to more than ata-pci.c.=20 > The same approach could be used for the other INW/OUTW calls as well bu= t=20 > they're not in the fast path. I think it may make more of a difference= =20 > with small reads. >=20 > Feel free to test, cleanup, and commit. I had something semilar to this once back when, but since HW got lots=20 faster I couldn't measure it anymore, but maybe things has changed... Anyhow it needs to be applied to ata-isa.c ata-card.c ata-cbus.c etc to=20 not break anything at least. I'll think about it and eventually do=20 something about it in ATA-mkIII if it really is mesureable again.. --=20 -S=F8ren