linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHSET] Add support for simplified async direct-io
@ 2016-11-14 17:28 Jens Axboe
  2016-11-14 17:28 ` [PATCH 1/2] block: support any sized IO for simplified bdev direct-io Jens Axboe
                   ` (2 more replies)
  0 siblings, 3 replies; 31+ messages in thread
From: Jens Axboe @ 2016-11-14 17:28 UTC (permalink / raw)
  To: axboe, linux-block; +Cc: hch

This is on top of for-4.10/dio, which has Christophs simplified sync
O_DIRECT support and the IO poll bits.

The restriction on 4 inline vecs is removed on the sync support, we
just allocate the bio_vec array if we have to. I realize this negates
parts of the win of the patch for sync, but it's still a lot leaner
than the old code. And it means we use the same path for any type
of sync O_DIRECT, instead of potentially bouncing between the two.

Second patch is adding async support for the code base. Lightly
tested. Performance results, from fio:

Before patch:

Treads x QD	IOPS		usr	sys
=============================================
1x1		113K		19.8%	24.6%
1x4		321K		30.9%	65.9%
4x4		759K		19.9%	42.2%

After patch:

Treads x QD	IOPS		usr	sys
=============================================
1x1		116K		21.8%	20.2%
1x4		365K		25.3%	72.9%
4x4		818K		20.7%	42.3%

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2016-11-17 21:06 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-14 17:28 [PATCHSET] Add support for simplified async direct-io Jens Axboe
2016-11-14 17:28 ` [PATCH 1/2] block: support any sized IO for simplified bdev direct-io Jens Axboe
2016-11-14 17:28 ` [PATCH 2/2] block: add support for async simple direct-io for bdevs Jens Axboe
2016-11-14 17:37 ` [PATCHSET] Add support for simplified async direct-io Christoph Hellwig
2016-11-14 17:47   ` Jens Axboe
2016-11-14 18:00     ` Christoph Hellwig
2016-11-14 18:02       ` Jens Axboe
2016-11-14 18:05         ` Christoph Hellwig
2016-11-14 18:08           ` Jens Axboe
2016-11-14 18:11             ` Christoph Hellwig
2016-11-14 18:17               ` Jens Axboe
2016-11-15 13:58                 ` Christoph Hellwig
2016-11-16 16:09               ` Jens Axboe
2016-11-16 16:31                 ` Christoph Hellwig
2016-11-16 16:57                   ` Jens Axboe
2016-11-16 17:16                     ` Christoph Hellwig
2016-11-16 20:02                       ` Jens Axboe
2016-11-16 20:36                         ` Jens Axboe
2016-11-16 20:51                           ` Jens Axboe
2016-11-17  3:44                             ` Jens Axboe
2016-11-17  4:43                         ` Jens Axboe
2016-11-17 12:50                           ` Christoph Hellwig
2016-11-17 13:25                             ` Jens Axboe
2016-11-17 15:03                               ` Jens Axboe
2016-11-17 15:16                                 ` Christoph Hellwig
2016-11-17 20:17                                 ` Christoph Hellwig
2016-11-17 20:30                                   ` Jens Axboe
2016-11-17 21:04                                     ` Christoph Hellwig
2016-11-17 21:06                                       ` Jens Axboe
2016-11-17 12:46                         ` Christoph Hellwig
2016-11-17 13:26                           ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).