When writing my new hdfs engine, I met a problem with IO merge.
If I submit IO that are bigger that what the hdfs can manage, I return them to
fio as incomplete IO, the net engine works the same way :
in engines/net.c, line 668+
io_u->resid = io_u->xfer_buflen - ret;
io_u->error = 0;
return FIO_Q_COMPLETED;
But the fio count them as two or more fast IO. I'm not sure it's a good
measurement because if I'm simulating an application with fio, I expect to get
the full IO latency and operations/s count. I don't mesure to mesure sub-io for
that. For example, reducing the maximum transfer size will increase IO/s and
reduce latency, even if the simulated application really sees reduced
performance, because more of it's high level IO operation generated more real
IO.
Is there a way to prevent that in fio, or is that up to my engine to manage
that and merge IO ?--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html