* [GIT PULL] io_uring async discard support
@ 2024-09-13 17:02 Jens Axboe
2024-09-16 11:59 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: Jens Axboe @ 2024-09-13 17:02 UTC (permalink / raw)
To: Linus Torvalds; +Cc: io-uring, [email protected]
Hi Linus,
As mentioned, and sitting on top of both the 6.12 block and io_uring
core branches, here's support for async discard through io_uring. This
allows applications to issue async discards, rather than rely on the
blocking sync ioctl discards we already have. The sync support is
difficult to use outside of idle/cleanup periods. On a real (but slow)
device, testing shows the following results when compared to sync
discard:
qd64 sync discard: 21K IOPS, lat avg 3 msec (max 21 msec)
qd64 async discard: 76K IOPS, lat avg 845 usec (max 2.2 msec)
qd64 sync discard: 14K IOPS, lat avg 5 msec (max 25 msec)
qd64 async discard: 56K IOPS, lat avg 1153 usec (max 3.6 msec)
and synthetic null_blk testing with the same queue depth and block size
settings as above shows:
Type Trim size IOPS Lat avg (usec) Lat Max (usec)
==============================================================
sync 4k 144K 444 20314
async 4k 1353K 47 595
sync 1M 56K 1136 21031
async 1M 94K 680 760
Please pull!
The following changes since commit 84eacf177faa605853c58e5b1c0d9544b88c16fd:
io_uring/io-wq: inherit cpuset of cgroup in io worker (2024-09-11 07:27:56 -0600)
are available in the Git repository at:
git://git.kernel.dk/linux.git tags/for-6.12/io_uring-discard-20240913
for you to fetch changes up to 50c52250e2d74b098465841163c18f4b4e9ad430:
block: implement async io_uring discard cmd (2024-09-11 10:45:28 -0600)
----------------------------------------------------------------
for-6.12/io_uring-discard-20240913
----------------------------------------------------------------
Jens Axboe (2):
Merge branch 'for-6.12/block' into for-6.12/io_uring-discard
Merge branch 'for-6.12/io_uring' into for-6.12/io_uring-discard
Pavel Begunkov (5):
io_uring/cmd: expose iowq to cmds
io_uring/cmd: give inline space in request to cmds
filemap: introduce filemap_invalidate_pages
block: introduce blk_validate_byte_range()
block: implement async io_uring discard cmd
block/blk.h | 1 +
block/fops.c | 2 +
block/ioctl.c | 163 +++++++++++++++++++++++++++++++----
include/linux/io_uring/cmd.h | 15 ++++
include/linux/pagemap.h | 2 +
include/uapi/linux/blkdev.h | 14 +++
io_uring/io_uring.c | 11 +++
io_uring/io_uring.h | 1 +
io_uring/uring_cmd.c | 7 ++
mm/filemap.c | 17 ++--
10 files changed, 209 insertions(+), 24 deletions(-)
--
Jens Axboe
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] io_uring async discard support
2024-09-13 17:02 [GIT PULL] io_uring async discard support Jens Axboe
@ 2024-09-16 11:59 ` pr-tracker-bot
0 siblings, 0 replies; 2+ messages in thread
From: pr-tracker-bot @ 2024-09-16 11:59 UTC (permalink / raw)
To: Jens Axboe; +Cc: Linus Torvalds, io-uring, [email protected]
The pull request you sent on Fri, 13 Sep 2024 11:02:24 -0600:
> git://git.kernel.dk/linux.git tags/for-6.12/io_uring-discard-20240913
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/adfc3ded5c33d67e822525f95404ef0becb099b8
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-09-16 11:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-13 17:02 [GIT PULL] io_uring async discard support Jens Axboe
2024-09-16 11:59 ` pr-tracker-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox