Re: [PATCH] fio: add NVMe engine

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/27/20 12:14 AM, Alexey Dobriyan wrote:
> On Fri, Mar 27, 2020 at 12:56:00AM +0000, Damien Le Moal wrote:
>>
>> On 2020/03/27 5:44, Alexey Dobriyan wrote:
>>> Add simple iodepth=1 NVMe engine:
>>>
>>> 	ioengine=nvme
>>>
>>> It works via standard Linux NVMe ioctls.
>> Keith is working on splitting up nvmecli into the cli part and libnvme which
>> uses the kernel ioctl iinterface for NVMe command passthrough. So I think it may
>> be better to implement ioengine=libnvme using Keith libnvme library. That will
>> remove the need to define all the NVMe command stuff here.
> Sure. It is just standalone file you can send to colleagues and forget.
> Similar to how header-only C++ libraries work.
>
>>> It will be used for testing upcoming ZNS stuff.



I'm not completely against fio providing an nvme ioengine, and libnvme
could easily fit in, but I don't think that faithfully represents how
these devices are actually used. The passthrough interface is not really
our fast path, and being a synchronous interface is a bit limiting in
testing device capabilities.


If you need to test ZNS features, it would be more worthwhile to wire
that up through an existing proper syscall rather than going through the
driver's ioctl interface. Just my $.02.


If you're really going to do it, though, I would recommend not using
NVME_IOCTL_SUBMIT_IO, and instead always use the more flexible
NVME_IOCTL_SUBMIT_IO.





[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux