From: Vincent Fu <vincentfu@gmail.com>
To: Alberto Faria <afaria@redhat.com>, fio@vger.kernel.org
Cc: Stefano Garzarella <sgarzare@redhat.com>,
Kevin Wolf <kwolf@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
Damien Le Moal <damien.lemoal@opensource.wdc.com>
Subject: Re: [PATCH v2 00/10] Add a libblkio engine
Date: Fri, 2 Dec 2022 16:35:41 -0500 [thread overview]
Message-ID: <dabde822-adf4-53c3-2a0c-d14af7ad496b@gmail.com> (raw)
In-Reply-To: <20221201220803.52057-1-afaria@redhat.com>
On 12/1/22 17:07, Alberto Faria wrote:
> The libblkio library provides a unified API for efficiently accessing
> block devices using modern high-performance block I/O interfaces like
> io_uring and vhost-user-blk. Using libblkio reduces the amount of code
> needed for interfacing with storage devices and allows developers to
> focus on their applcations.
>
> Add a libblkio engine that uses libblkio to perform I/O. This is useful
> to benchmark the library itself, and also adds support for storage
> interfaces and devices otherwise not supported by fio, such as
> virtio-blk PCI, vhost-user, and vhost-vDPA devices.
>
> See the libblkio documentation [2] or KVM Forum 2022 [3] presentation
> for more information on the library itself.
>
> [1] https://gitlab.com/libblkio/libblkio
> [2] https://libblkio.gitlab.io/libblkio/index.html
> [3] https://static.sched.com/hosted_files/kvmforum2022/8c/libblkio-kvm-forum-2022.pdf
>
> v2:
> - In the HOWTO and manpage, point users to the libblkio docs to know
> what drivers and properties are available.
> - Avoid mentioning libblkio API symbols in the HOWTO and manpage.
> - Don't document FIO_OPT_STR_SET options as having type bool in the
> HOWTO and manpage.
> - Prevent null deref in fio_blkio_init() error path.
> - Fix total_threaded_subjobs() to only count jobs using the libblkio
> engine.
> - Force `td->o.disable_slat = 1`, as request enqueueing is fast and it
> is not possible to know exactly when a request is submitted.
> - Have all type declarations near the top of the file.
> - Be more economical with blank lines.
>
> Alberto Faria (10):
> Add a libblkio engine
> Add engine flag FIO_SKIPPABLE_IOMEM_ALLOC
> engines/libblkio: Allow setting option mem/iomem
> engines/libblkio: Add support for poll queues
> engines/libblkio: Add option libblkio_vectored
> engines/libblkio: Add option libblkio_write_zeroes_on_trim
> engines/libblkio: Add option libblkio_wait_mode
> engines/libblkio: Add option libblkio_force_enable_completion_eventfd
> engines/libblkio: Add options for some driver-specific properties
> engines/libblkio: Share a single blkio instance among threads in same
> process
>
> HOWTO.rst | 95 +++
> Makefile | 6 +
> configure | 25 +
> engines/libblkio.c | 914 ++++++++++++++++++++++
> examples/libblkio-io_uring.fio | 29 +
> examples/libblkio-virtio-blk-vfio-pci.fio | 29 +
> fio.1 | 78 ++
> ioengines.h | 2 +
> memory.c | 22 +-
> optgroup.h | 2 +
> 10 files changed, 1192 insertions(+), 10 deletions(-)
> create mode 100644 engines/libblkio.c
> create mode 100644 examples/libblkio-io_uring.fio
> create mode 100644 examples/libblkio-virtio-blk-vfio-pci.fio
>
Applied. Thanks.
prev parent reply other threads:[~2022-12-02 21:35 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-01 22:07 [PATCH v2 00/10] Add a libblkio engine Alberto Faria
2022-12-01 22:07 ` [PATCH v2 01/10] " Alberto Faria
2022-12-01 22:07 ` [PATCH v2 02/10] Add engine flag FIO_SKIPPABLE_IOMEM_ALLOC Alberto Faria
2022-12-01 22:07 ` [PATCH v2 03/10] engines/libblkio: Allow setting option mem/iomem Alberto Faria
2022-12-01 22:07 ` [PATCH v2 04/10] engines/libblkio: Add support for poll queues Alberto Faria
2022-12-01 22:07 ` [PATCH v2 05/10] engines/libblkio: Add option libblkio_vectored Alberto Faria
2022-12-01 22:07 ` [PATCH v2 06/10] engines/libblkio: Add option libblkio_write_zeroes_on_trim Alberto Faria
2022-12-01 22:08 ` [PATCH v2 07/10] engines/libblkio: Add option libblkio_wait_mode Alberto Faria
2022-12-01 22:08 ` [PATCH v2 08/10] engines/libblkio: Add option libblkio_force_enable_completion_eventfd Alberto Faria
2022-12-01 22:08 ` [PATCH v2 09/10] engines/libblkio: Add options for some driver-specific properties Alberto Faria
2022-12-01 22:08 ` [PATCH v2 10/10] engines/libblkio: Share a single blkio instance among threads in same process Alberto Faria
2022-12-02 21:35 ` Vincent Fu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=dabde822-adf4-53c3-2a0c-d14af7ad496b@gmail.com \
--to=vincentfu@gmail.com \
--cc=afaria@redhat.com \
--cc=damien.lemoal@opensource.wdc.com \
--cc=fio@vger.kernel.org \
--cc=kwolf@redhat.com \
--cc=sgarzare@redhat.com \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).