From mboxrd@z Thu Jan 1 00:00:00 1970 From: Javier Guerra Subject: Re: [DRBD-user] kvm, drbd, elevator, rotational - quite an interesting co-operation Date: Fri, 3 Jul 2009 08:06:07 -0500 Message-ID: <200907030806.07624.javier@guerrag.com> References: <4A4D1099.8050709@msgid.tls.msk.ru> <20090703084503.GC9150@soda.linbit> Mime-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: Michael Tokarev , KVM list , drbd-user@lists.linbit.com To: Lars Ellenberg Return-path: Received: from mail-yx0-f188.google.com ([209.85.210.188]:54997 "EHLO mail-yx0-f188.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756885AbZGCNGL (ORCPT ); Fri, 3 Jul 2009 09:06:11 -0400 Received: by yxe26 with SMTP id 26so3312721yxe.33 for ; Fri, 03 Jul 2009 06:06:14 -0700 (PDT) In-Reply-To: <20090703084503.GC9150@soda.linbit> Content-Disposition: inline Sender: kvm-owner@vger.kernel.org List-ID: Lars Ellenberg wrote: > On Thu, Jul 02, 2009 at 11:55:05PM +0400, Michael Tokarev wrote: > > drbd: what's the difference in write pattern on secondary and > > primary nodes? Why `rotational' flag makes very big difference > > on secondary and no difference whatsoever on primary? > > not much. > disk IO on Primary is usually submitted in the context of the > submitter (vm subsystem, filesystem or the process itself) > whereas on Secondary, IO is naturally submitted just by the > DRBD receiver and worker threads. just like with KVM itself, using several worker threads against a single IO device makes performance heavily dependent on a sensible elevator algorithm. ideally, there should be only one worker thread for each thread/process originating the initial write. unfortunately DRBD, being a block/level protocol, might have a hard time unraveling which writes belong to which process. maybe just merging adjacent (in block address space, not in time) write operations would keep most of the relationships. -- Javier