From owner-freebsd-geom@FreeBSD.ORG Tue Nov 22 16:33:11 2005 Return-Path: X-Original-To: freebsd-geom@freebsd.org Delivered-To: freebsd-geom@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4534416A42C for ; Tue, 22 Nov 2005 16:33:11 +0000 (GMT) (envelope-from wjw@withagen.nl) Received: from freebee.digiware.nl (dsl439.iae.nl [212.61.63.187]) by mx1.FreeBSD.org (Postfix) with ESMTP id 72A9C43D55 for ; Tue, 22 Nov 2005 16:32:53 +0000 (GMT) (envelope-from wjw@withagen.nl) Received: from [212.61.27.82] (laptop.digiware.nl [212.61.27.82]) by freebee.digiware.nl (Postfix) with ESMTP id A86C92AAAA for ; Tue, 22 Nov 2005 17:32:36 +0100 (CET) Message-ID: <4383480A.7070606@withagen.nl> Date: Tue, 22 Nov 2005 17:32:10 +0100 From: Willem Jan Withagen User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en MIME-Version: 1.0 To: freebsd-geom@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: A question on gmirror and "load sharing" X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Nov 2005 16:33:11 -0000 Hi, I'm in the proces of running some "performance" tests on raw disks, as a small configuration test to run my NFS-perfomance tests on a different setup. (http://withagen.dyndns.org/FreeBSD/Performance) So I build a mirror with gmirror and 2 80Gb WD-sata disks. On that I run tests like (for reading): ---- while ($i < 16000) dd of=/dev/null if=/dev/ad4 bs=5M count=1 iseek=$i end ---- Giving me transfer times and rates that depend on the location of the head on the platter. The graphs seem to suggest that this simple test is not at all bad as an approach to this. When you run this on an old BigFoot, which has a plexiglas view on the heads. You really see the arm creeping slowly to the spindle. However when I run this read test on a mirrored set of disks. I see (with systat -vm 1) that data is only transfered from 1 disk for a long time. And then several seconds later the other disk is used. This also happens if I create the mirror with 'gmirror label -b load'. And as such the transferrate of the mirror is equal or less than a single disk. Perhaps I should test this with 'split'? Or is this something internal in the kernel that a 5Mb request comes in, and is forwarded as a whole request down the filesystem. And thus there is no parallellism to take advantage off. (Even on an SMP the request is to one disk only) --WjW