Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755361AbcKBOzI (ORCPT ); Wed, 2 Nov 2016 10:55:08 -0400 Received: from verein.lst.de ([213.95.11.211]:32922 "EHLO newverein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753438AbcKBOzG (ORCPT ); Wed, 2 Nov 2016 10:55:06 -0400 Date: Wed, 2 Nov 2016 15:54:59 +0100 From: Christoph Hellwig To: Jens Axboe Cc: axboe@kernel.dk, linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, hch@lst.de Subject: Re: [PATCH 3/4] blk-mq: implement hybrid poll mode for sync O_DIRECT Message-ID: <20161102145459.GD13964@lst.de> References: <1478034325-28232-1-git-send-email-axboe@fb.com> <1478034325-28232-4-git-send-email-axboe@fb.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1478034325-28232-4-git-send-email-axboe@fb.com> User-Agent: Mutt/1.5.17 (2007-11-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 736 Lines: 14 On Tue, Nov 01, 2016 at 03:05:24PM -0600, Jens Axboe wrote: > This patch enables a hybrid polling mode. Instead of polling after IO > submission, we can induce an artificial delay, and then poll after that. > For example, if the IO is presumed to complete in 8 usecs from now, we > can sleep for 4 usecs, wake up, and then do our polling. This still puts > a sleep/wakeup cycle in the IO path, but instead of the wakeup happening > after the IO has completed, it'll happen before. With this hybrid > scheme, we can achieve big latency reductions while still using the same > (or less) amount of CPU. > > Signed-off-by: Jens Axboe This looks very nice. I'll need to run some tests before giving the formal ACK, though.