RE: io_uring on CentOS8?

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

 



Hi Daniel, Intel uses pvsync2 for QD1 testing so if you cannot use spdk or io_uring (these are the fastest ways to test a device), you can switch your engine to pvsync2 on this kernel and this will work. 

Here's what I tried on PCIe Gen3 system with an Optane drive and your drive.


[root@fm42adsdemo001 block]# fio --bs=1M --rw=randwrite --numjobs=1 --iodepth=1  --size=10000M \
> --filename=/dev/nvme6n1 --name=mylittletest --direct=1 --fsync=1 \
> --refill_buffers --ioengine=pvsync2 --group_reporting \
> --fallocate=none --runtime=60 --time_based --hipri
mylittletest: (g=0): rw=randwrite, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=pvsync2, iodepth=1
fio-3.24-5-g2ee2
Starting 1 process
Jobs: 1 (f=1): [w(1)][100.0%][w=2048MiB/s][w=2048 IOPS][eta 00m:00s]

I ran the same exact job on this mid-range Intel Xeon cpu and found io_uring only very slightly faster than pvsync2
Jobs: 1 (f=1): [w(1)][100.0%][w=2057MiB/s][w=2057 IOPS][eta 00m:00s]

HTH,
Frank Ober


-----Original Message-----
From: Jens Axboe <axboe@xxxxxxxxx> 
Sent: Sunday, February 14, 2021 8:50 AM
To: Daniel Menzel <daniel.menzel@xxxxxxxxxxxxx>; fio@xxxxxxxxxxxxxxx
Subject: Re: io_uring on CentOS8?

On 2/14/21 8:17 AM, Daniel Menzel wrote:
> /Somehow it seems as if I'm receiving messages from the mailing list - 
> but mine do not seem to get through. So I'm trying again./
> 
> Hi,
> 
> currently I started testing fairly fast NVMe-drives and I for the first time I dealt with the question whether the io engine is sufficient (up till now I just the default /libaio/). I found some information on io_uring online and now tried to switch to that engine:
> 
> fio --bs=1M --rw=randwrite --numjobs=1 --iodepth=1  --size=10000M 
> --filename=/dev/nvme0n1 --name=mylittletest --direct=1 --fsync=1  
> --refill_buffers --ioengine=io_uring --group_reporting 
> --fallocate=none --runtime=60 --time_based --hipri
> 
> But it crashes with the following information: fio: pid=2490, 
> err=38/file:engines/io_uring.c:699, func=io_queue_init, error=Function 
> not implemented
> 
> My system:
> 
>  1. fio-3.25
>  2. CentOS8 (Kernel 4.18.0-240.1.1.el8_3.x86_64)  3. I have installed 
> the packes liburing and liburing-devel
> 
> Am I doing something wrong?

You are not, but since you get -ENOSYS from the system call, that means that the kernel doesn't support io_uring. It was officially added with the 5.1 kernel, so 4.18 predates that.


--
Jens Axboe





[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