Date: Wed, 14 Dec 2016 21:49:01 +0200 From: Alexander Motin <mav@FreeBSD.org> To: Andriy Gapon <avg@FreeBSD.org>, src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Subject: Re: svn commit: r309714 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs Message-ID: <eaaef2a9-eb5a-5629-c8f3-54c3a45b16b5@FreeBSD.org> In-Reply-To: <cd831c65-ffb3-b84b-7e0e-b84ae32bace1@FreeBSD.org> References: <201612081558.uB8Fw4xA027508@repo.freebsd.org> <cd831c65-ffb3-b84b-7e0e-b84ae32bace1@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 14.12.2016 14:03, Andriy Gapon wrote: > On 08/12/2016 17:58, Alexander Motin wrote: >> This change switches zio_timestamp_compare() from comparing uninitialized >> io_offset to really populated io_bookmark values. I haven't decided yet >> what to do with timestampts, but on simple tests this change gives the >> same peformance results by just making code to work as declared. > > I think that we should just enable precise timestamps. > I just can't see them noticeably hurting performance given the amount of > calculations, memory allocations, locking, etc, that ZFS already has. > And there are layers above and below ZFS too. It is orthogonal to this change and can be done any time, if decided. I worried mostly about some older systems still using HPET or ACPI timecounters, where half dozen extra timer calls per single I/O may be quite expensive. I've recently reviewed all places where ZFS calls gethrtime(), and found that in most of them precision is not needed, even 1 second would be enough, not even 1/hz. I've found only two cases where precision is important, both about ZIO sorting in different places (this is one of the two), and both of them are now workarounded now by using offset as secondary key. -- Alexander Motin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?eaaef2a9-eb5a-5629-c8f3-54c3a45b16b5>