axboe / fio

Flexible I/O Tester
GNU General Public License v2.0
5.24k stars 1.26k forks source link

how to write with stream for nvme device #1405

Open cpengwei opened 2 years ago

cpengwei commented 2 years ago

Description of the new feature

cpengwei commented 2 years ago

hello,now i have a nvme deivce,and i want to use fio with multistream that is used with sg engine in the spec,but it is error with 'ioengine sg unable to successfully execute read capacity to get block size and maximum lba'

ankit-sam commented 2 years ago

Hi @cpengwei the sg ioengine is specifically for SCSI devices. As far as I know there isn't a similar ioengine specifically for NVMe devices, which can do nvme streams etc. Recently we added changes to support NVMe uring passthrough commands. For that purpose we introduced few helper functions to get block size, number of lba's. The changes are present in (engines/nvme.c and engines/nvme.h)

This could be the first step towards introducing a new ioengine specifically for nvme devices.