Re: Using libaio with buffered IO

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

 



Georg Schönberger <gschoenberger@xxxxxxxxxxxxxxxx> writes:

> Hi Jens,
>
> in the fio man-page you are writing:
> "Even async engines my impose OS restrictions causing the desired
> depth not to be achieved.This may happen on Linux when using libaio
> and not setting direct=1, since buffered IO is not async on that OS."
> (there's also a typo, I think it should be "may" instead of "my")
>
> Nevertheless it is possible to use fio with libaio and buffered IO:
> $ fio --rw=write --name=test --size=20M --runtime=60 --time_based --iodepth=64 --ioengine=libaio
> [...]
> IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.2%, 16=0.3%, 32=0.6%, >=64=98.8%
>
> Could you point out the limitations that come up with
> libaio<->buffered IO (page cache)?

The I/O is synchronous.  In other words, if you issue io_submit with 32
iocbs, io_submit will not return until all 32 I/Os are complete (or
there was an error).

Cheers,
Jeff
--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[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