From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jens Axboe Subject: Re: [PATCH 5/5] virtio-blk: implement ->make_request Date: Thu, 6 Oct 2011 15:53:09 +0200 Message-ID: <20111006135309.GA27941@kernel.dk> References: <20111005195403.407628164@bombadil.infradead.org> <20111005195530.558142038@bombadil.infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Rusty Russell , Chris Wright , Stefan Hajnoczi , kvm@vger.kernel.org, linux-kernel@vger.kernel.org To: Christoph Hellwig Return-path: Content-Disposition: inline In-Reply-To: <20111005195530.558142038@bombadil.infradead.org> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On Wed, Oct 05 2011, Christoph Hellwig wrote: > Add an alternate I/O path that implements ->make_request for virtio-blk. > This is required for high IOPs devices which get slowed down to 1/5th of > the native speed by all the locking, memory allocation and other overhead > in the request based I/O path. We definitely have some performance fruit hanging rather low in that path, but a factor 5 performance difference sounds insanely excessive. I haven't looked at virtio_blk in detail, but I've done 500K+ IOPS on request based drivers before (yes, on real hardware). So it could be that virtio_blk is just doing things rather suboptimally in some places, and that it would be possible to claim most of that speedup there too. -- Jens Axboe