From owner-freebsd-current@FreeBSD.ORG Mon Nov 1 05:21:19 2004 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 EC19D16A5F3 for ; Mon, 1 Nov 2004 05:21:19 +0000 (GMT) Received: from picard.newmillennium.net.au (static-114.250.240.220.dsl.comindico.com.au [220.240.250.114]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7003143D58 for ; Mon, 1 Nov 2004 05:21:18 +0000 (GMT) (envelope-from freebsd@newmillennium.net.au) Received: from picard.newmillennium.net.au (localhost [127.0.0.1]) iA15Mn5l004912; Mon, 1 Nov 2004 16:22:49 +1100 (EST) (envelope-from freebsd@newmillennium.net.au) Received: (from www@localhost)iA15MmOZ004909; Mon, 1 Nov 2004 16:22:48 +1100 (EST) (envelope-from freebsd@newmillennium.net.au) X-Authentication-Warning: picard.newmillennium.net.au: www set sender to freebsd@newmillennium.net.au using -f Received: from CPE-61-9-204-122.nsw.bigpond.net.au (CPE-61-9-204-122.nsw.bigpond.net.au [61.9.204.122]) by picard.newmillennium.net.au (IMP) with HTTP for ; Mon, 1 Nov 2004 16:22:48 +1100 Message-ID: <1099286568.4185c82881654@picard.newmillennium.net.au> Date: Mon, 1 Nov 2004 16:22:48 +1100 From: "Alastair D'Silva" To: Brad Knowles References: <002401c4bf9c$c4fee8e0$0201000a@riker> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit User-Agent: Internet Messaging Program (IMP) 3.2.3 / FreeBSD-5.2 X-Originating-IP: 61.9.204.122 cc: current@freebsd.org Subject: Re: Gvinum RAID5 performance 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, 01 Nov 2004 05:21:20 -0000 Quoting Brad Knowles : > At 9:55 AM +1100 2004-11-01, wrote: > > > Now, running a dd from a plex gives me less performance than running a > > dd from one of the subdisks, even though the array is not running in > > degraded mode. > > Right. This is RAID-5. It is used for reliability, not > performance. The entire stripe has to be read at once and written at > once, for any operation involving that stripe. Granted, however there are some RAID5 implementations that read only the necessary data and forgo reading the parity on reads when not operating in degraded mode (3Ware springs to mind as an immediate example). The offshoot of this is that to ensure data integrity, a background process is run periodically to verify the parity. Alternatively, simply buffering the (whole) stripe in memory may be enough, as subsequent reads from the same stripe will be fed from memory, rather than resulting in another disk I/O (why didn't the on-disk cache feed this request? I did notice that the read from a single drive resulted in that drive's access light being locked on solid, while reading from the plex caused all drives to flicker rather than being solid). Perhaps a sysctl or parameter to the 'org' directive in vinum could be introduced to toggle the behaviour between the two/three modes of operation. I think both approaches have the ability to increase overall reliability as well as improve performance since the drives will not be worked as hard. -- Alastair D'Silva Networking Consultant New Millennium Networking