Re: Missing log entries and other questions

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

 



On 05/04/2016 11:34 AM, Jens Axboe wrote:
On 05/04/2016 08:10 AM, Jens Axboe wrote:
On 04/27/2016 02:38 PM, Jens Axboe wrote:
I'll try and see if I can reproduce this.

So I took a look at your logged output. The way that fio logs is that it
does it on IO completion. You have set 1s intervals, so it checks, when
an IO completes, if we're due for logging the previous interval IOPS:

spent = mtime_since(&td->iops_sample_time, t);
if (spent < td->o.iops_avg_time)
         return;

If you are doing lots of IO, it matches pretty evenly. But for slow
workloads, it will end up being skewed a bit. It won't be too hard to
fix the drift, though, but it still won't make it clock precise at exact
1s intervals.

We could move this part into the main thread, and out of the workers.
Then we could make it more precise. Might not be a bad idea in general,
since it'll move some of this code out of the fast path.

I'll take a stab at it.

Can you try the below patch?

I'll also try to take a look at this as we've seen a fair amount of skew in the logs doing fio librbd upstream ceph testing. I actually wrote a first stab at a parser to aggregate logs from multiple fio processes with the assumption of non-uniform sampling:

https://github.com/ceph/cbt/blob/master/tools/fiologpaser.py

The idea is you have say 8 fio bw logs in a directory you can do:

fiologparser.py -f *bw*

which will return average values from the logs over user defined intervals by taking weighted scores from samples that overlap. You can also look at per-interval averages, sums, or just a global average.

various option flags:

-i <interval time in ms>
-d <divide results by d (say if you want a different unit of output)
-f <show full interval data>
-a <show average interval data across logs>
-s <show sums for interval data across logs>

Mark
--
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