RE: fiologparser_hist.py script patch and enhancements?

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

 



I created a pull request from github with the latest changes, both to fiologparser_hist.py and the associated man page.   This includes a new "--directions=rwtm" option to allow independent directional results to be printed (with an added 'dir' column).  

If there is a way to infer whether the histogram results are in 'ns' or 'ms' from the number of columns, please let me know.  I wonder if the 'coarseness' option might be a factor they might complicate things.  I'm mostly relying on the original script operation, rather than having a more complete understanding of the dependencies.

Thanks

Kris Davis

-----Original Message-----
From: fio-owner@xxxxxxxxxxxxxxx [mailto:fio-owner@xxxxxxxxxxxxxxx] On Behalf Of Kris Davis
Sent: Monday, March 19, 2018 10:45 AM
To: Sitsofe Wheeler <sitsofe@xxxxxxxxx>
Cc: fio@xxxxxxxxxxxxxxx; Jens Axboe <axboe@xxxxxxxxx>
Subject: RE: fiologparser_hist.py script patch and enhancements?

Sitsofe, 

Thanks for being diligent with this one.  I haven't run into grumbles about whitespace before, so I'm unclear what you are seeing.  However, I'll try to set up a github clone and submit changes there.  I've not really used github for any thing other than some coursework before, nothing collaborative.   I've only been submitting patches in the email because of the suggestion of others, and it seemed to be what others have done.

I'm unclear about the __HIST_COLUMNS.  The actual values appears to be discovered from the input log files.  However, the --group_nr option was in the original script to override the expected FIO_IO_U_PLAT_GROUP_NR value.  I don't really understand the relationship between the FIO_IO_U_PLAT_GROUP_NR value, the HIST_COLUMNs and whether the BINS are in milliseconds or microseconds.   If there is a known consistent relationship, maybe the options can be made simpler.

I've updated the man page, now that I understand how the need for manual editing.   I've also implemented yet another option.  I found the personal need to for getting separate results for the reads and writes.  So I added another "--directions=rwtm" option to allow a person to specify which directions they want output.   If the --directions option is not provide, the output is the normal mixed/combined results.  If --directions specified, it uses the characters to indicate which directions results to created, and adds a "dir" column to the output.  You can have both directional and 'mixed' rows as desired.

I've implemented and did some quick tests, but want to do some more careful variations - to make sure that directional results are correct, though the mixed results are pretty easily compare old results.

So, be patient for the next chapter in the epic fiologparser_hist patches...
Thanks Much
Kris Davis

-----Original Message-----
From: Sitsofe Wheeler [mailto:sitsofe@xxxxxxxxx] 
Sent: Saturday, March 17, 2018 5:01 AM
To: Kris Davis <Kris.Davis@xxxxxxx>
Cc: fio@xxxxxxxxxxxxxxx; Jens Axboe <axboe@xxxxxxxxx>
Subject: Re: fiologparser_hist.py script patch and enhancements?

Hi,

On 15 March 2018 at 17:02, Kris Davis <Kris.Davis@xxxxxxx> wrote:
> Sorry I've been unavailable for a couple of weeks.
>
> Chose #2:
> 2. Keep one script but somehow let it contain non-weighted vs weighted paths.
>
> I merged the changes from my "no weighted" version with the original script, and added a "--noweight" option.    I didn't try to combined the file i/o methods, but just split the "main" function latter operation into "output_interval_data" and "output_weighted_interval_data", for lack of more creative names :).
>
> Below is the new patch

By some chance you wouldn't have this up in a github repo too? GMail's web client seems to do unspeakable whitespace changes to patches (I wound up copying and pasting from https://www.spinics.net/lists/fio/msg06872.html in the end). I still get grumbles about trailing whitespace from git but again I don't know if that's just how I got the patch.

Could you update the tool's manpage
(tools/hist/fiologparser_hist.py.1) with your changes too?

Shouldn't __HIST_COLUMNS be changed depending on whether micro or nanoseconds are being used? It looks like it matches FIO_IO_U_PLAT_NR which is calculated by (1 << FIO_IO_U_PLAT_BITS) * FIO_IO_U_PLAT_GROUP_NR which for fio-3.5 is (1 << 6) * 29  = 1856 .
Commit https://github.com/axboe/fio/commit/d6bb626ef37d3905221ade2887b422717a07af09
seems to be the one that changed the value of FIO_IO_U_PLAT_GROUP_NR ...

Beyond that a simple run worked for me with the following:

cd /tmp/
fio --name=test --rw=read --runtime=5s --time_based --filename=/tmp/fio.tmp --size=1M --write_hist_log=test
--log_hist_msec=100
fiologparser_hist.py test_clat_hist.1.log fiologparser_hist.py --noweight --percentiles 0,1,50 test_clat_hist.1.log

--
Sitsofe | http://sucs.org/~sits/
N�����r��y���b�X��ǧv�^�)޺{.n�+���������ܨ}���Ơz�&j:+v���
����zZ+��+zf���h���~����i���z��w���?����&�)ߢf
��.n��������+%������w��{.n�������^n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�

[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