Re: NCQ Priority Support and FIO

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

 



Hi Sitsofe,

Building off of the above change to control the priority bit, I'm
trying to add the ability to track completion latencies for high and
low prio read commands separately, but I'm not sure what I added to FIO is
exactly correct.  It seems to be very accurate for qdepths up to 8,
but at 16 and 32 I start seeing the FIO output for the high prio
commands be higher than what I see when I take a bus trace and parse
that (low prio latencies are what I would expect however).  What I am
trying to do is track the priority of the IO when it is set in
libaio.c via the following (notice the io_us[0]->priorityBit
additions):

https://github.com/brschwartz/fio/blob/10fdb93663e52beefa1f5dd836927d1e85c354d7/engines/libaio.c#L280

And then I grab that value again when the IO is complete and add the
associated latency to high and low prio read data structures which
then get outputted in the json output.

https://github.com/brschwartz/fio/commit/b7ad9003feb83fca57ec7438f5532426f597cec6
https://github.com/brschwartz/fio/blob/10fdb93663e52beefa1f5dd836927d1e85c354d7/stat.c#L1056

Does this seem right?  Or should I be tracking it a different way?
Thanks for any help/input!

Regards,
Brandon



On Sat, Apr 8, 2017 at 3:06 AM, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
>
> Hi Brandon,
>
> Looks like someone went on to implement a design based on what you
> were after https://github.com/xahmad/fio/commit/c45abdaa857bd30ccf4f20ed59340686fc3e9103
> . It's not in mainline fio but perhaps if it was cleaned up it could
> be submitted for inclusion?
>
> On 4 February 2017 at 07:37, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
> >
> > I can't think of anything if you mean "I want the same thread/single
> > job to send both normal AND high priority commands" so perhaps it
> > would have to be done as new patch to the pvsync2 ioengine...
> >
> > On 4 February 2017 at 00:03, Brandon Schwartz <schwartz.xn@xxxxxxxxx> wrote:
> >> Thanks for the info, I'll play around with that option and see if I
> >> can make that work.  Is there anything that would allow me to control
> >> the amount of priority commands from within a single thread?
> >>
> >> On Thu, Feb 2, 2017 at 3:36 PM, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
> >>>
> >>> Perhaps you could use multiple threads and utilise the flow
> >>> (http://fio.readthedocs.io/en/sphinx-doc/fio_doc.html#cmdoption-arg-flow
> >>> ) control on pairs of threads?
> >>>
> >>> On 2 February 2017 at 22:29, Brandon Schwartz <schwartz.xn@xxxxxxxxx> wrote:
> >>>>
> >>>> 60% RandomRead / 40% RandomWrite but of those reads, have 15% be high priority
> >>>>
> >>>> Or is there a way to get this sort of priority testing done with
> >>>> current FIO?
>
> --
> Sitsofe | http://sucs.org/~sits/
--
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