From owner-svn-src-head@freebsd.org Fri Oct 16 08:53:21 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B45DBA16504; Fri, 16 Oct 2015 08:53:21 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id 706AF149D; Fri, 16 Oct 2015 08:53:20 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from c211-30-166-197.carlnfd1.nsw.optusnet.com.au (c211-30-166-197.carlnfd1.nsw.optusnet.com.au [211.30.166.197]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id 8DBCF10409F7; Fri, 16 Oct 2015 19:53:09 +1100 (AEDT) Date: Fri, 16 Oct 2015 19:53:06 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Hans Petter Selasky cc: Bruce Evans , Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r289405 - head/sys/ufs/ffs In-Reply-To: <5620B15C.8090104@selasky.org> Message-ID: <20151016194242.N2138@besplex.bde.org> References: <201510160306.t9G3622O049128@repo.freebsd.org> <20151016151349.W1280@besplex.bde.org> <5620B15C.8090104@selasky.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.1 cv=R4L+YolX c=1 sm=1 tr=0 a=KA6XNC2GZCFrdESI5ZmdjQ==:117 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=kj9zAlcOel0A:10 a=Yp1Ll2uoM9ACfSKRgMIA:9 a=CjuIK1q_8ugA:10 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Oct 2015 08:53:21 -0000 On Fri, 16 Oct 2015, Hans Petter Selasky wrote: > On 10/16/15 08:21, Bruce Evans wrote: >> [Bruce Evans didn't write:] >> In addition, making the file contiguous in LBA space doesn't >> improve the access times from flash devices because they have no seek >> time. > > This is not exactly true, like Bruce pointed out too. Maybe there should be a > check, that if the block is too small reallocate it, else leave it for the > sake of the flash. Doing 1K accesses versus 64K accesses will typically show > up in the performance benchmark regardless of how fast the underlying medium > is. Now I don't unerstand the whole point of the change. Anything that reduces i/o's is good, but AFAIK ffs_doreallocblks() is all in software. Writes should be delayed so that it doesn't have to do extra i/o's to back out of committed writes. Often it reduces the number of writes and increases their size by making blocks contiguous so that the write can be clustered. Increasing the write size is especially good for flash devices, but maybe ffs's default block size is already large enough. Bruce