Skip to contentSkip to conversation

How to get IOPS when using terse output

DISCUSSION Peter Xu 4 participants 6 messages Feb 13, 2013 – Feb 18, 2013

lore
Share & tools
lore

Peter Xu

author
#0 lore raw

Hi, all,

I failed to find IOPS results for read/write under terse mode (with --minimal param when invoking fio program), while IOPS does exist in normal output without --minimal param.

It seems that I even cannot calculate it out only with the tersed output (since I don't know the total number of IO). Then, how should I get IOPS results when using terse output?

Yours,
Peter

#1 lore raw

Hello,

IOPS is definitely in the terse output. IIRC it's the column just after the bandwidth (don't remember the column # off hand; I have a awk script to pull out the interesting data). Look at the bottom of the HOWTO file for the layout of terse output.

z!

________________________________________
From: [email protected] [[email protected]] on behalf of Peter Xu [[email protected]]
Sent: Wednesday, February 13, 2013 2:44 AM
To: [email protected]
Subject: How to get IOPS when using terse output

Hi, all,

I failed to find IOPS results for read/write under terse mode (with --minimal param when invoking fio program), while IOPS does exist in normal output without --minimal param.

It seems that I even cannot calculate it out only with the tersed output (since I don't know the total number of IO). Then, how should I get IOPS results when using terse output?

#2 lore raw
In reply to Peter Xu

As I mentioned, I use an awk script to extract the relevant parts

B/W columns $7 and $48
IOPS columns $8 and $49
completion latency columns $16 and $57

z!

#3 lore raw
In reply to Peter Xu
Quoted 9 lines · Peter Xu

Hi, all,

I failed to find IOPS results for read/write under terse mode (with --minimal param when invoking fio program), while IOPS does exist in normal output without --minimal param.

It seems that I even cannot calculate it out only with the tersed output (since I don't know the total number of IO). Then, how should I get IOPS results when using terse output?

As Carl mentions, the IOPS are there. But let me make a suggestion to move over to the json format instead. It's easy to parse by computers and humans, and new performance metrics can be added without causing breakage in existing setups. The minimal/csv format is somewhat fragile for that.

That said, IOPS is there in the minimal output :-)

Signature · 1 line
Jens Axboe
#4 lore raw

----- Original Message -----

Quoted 27 lines

From: "Jens Axboe" <[email protected]>
To: "Peter Xu" <[email protected]>
Cc: [email protected]
Sent: Monday, 18 February, 2013 9:08:29 AM
Subject: Re: How to get IOPS when using terse output

Quoted 7 lines · Peter Xu

Hi, all,

I failed to find IOPS results for read/write under terse mode (with --minimal param when invoking fio program), while IOPS does exist in normal
output without --minimal param.

Quoted 5 lines

It seems that I even cannot calculate it out only with the tersed output
(since I don't know the total number of IO). Then, how should I get IOPS
results when using terse output?

As Carl mentions, the IOPS are there. But let me make a suggestion to move over to the json format instead. It's easy to parse by computers and humans, and new performance metrics can be added without causing breakage in existing setups. The minimal/csv format is somewhat fragile
for that.

Quoted 5 lines

That said, IOPS is there in the minimal output :-)

--
Jens Axboe

Maybe you consider that version 3 of the terse output is only used since Fio version 2.0.3!
Before that I think that IOPS are not in the terse output (http://freecode.com/projects/fio/releases/341331).
In the current Debian (http://packages.debian.org/squeeze/fio) and Ubuntu LTS releases (http://packages.ubuntu.com/precise/fio) the Fio version is before 2.0.3 and therefore the terse output is not of version 3.

As Jens said, you can also switch to JSON format instead.
So maybe you are stuck to use Fio from the git repo to have a newer version.

Regards, Georg

#5 lore raw
Quoted 33 lines · Georg Sch�nberger

----- Original Message -----

Quoted 27 lines

From: "Jens Axboe" <[email protected]>
To: "Peter Xu" <[email protected]>
Cc: [email protected]
Sent: Monday, 18 February, 2013 9:08:29 AM
Subject: Re: How to get IOPS when using terse output

Quoted 7 lines · Peter Xu

Hi, all,

I failed to find IOPS results for read/write under terse mode (with --minimal param when invoking fio program), while IOPS does exist in normal
output without --minimal param.

Quoted 5 lines

It seems that I even cannot calculate it out only with the tersed output
(since I don't know the total number of IO). Then, how should I get IOPS
results when using terse output?

As Carl mentions, the IOPS are there. But let me make a suggestion to move over to the json format instead. It's easy to parse by computers and humans, and new performance metrics can be added without causing breakage in existing setups. The minimal/csv format is somewhat fragile
for that.

Quoted 5 lines

That said, IOPS is there in the minimal output :-)

--
Jens Axboe

Quoted 6 lines

Maybe you consider that version 3 of the terse output is only used since Fio version 2.0.3! Before that I think that IOPS are not in the terse output (http://freecode.com/projects/fio/releases/341331). In the current Debian (http://packages.debian.org/squeeze/fio) and Ubuntu LTS releases (http://packages.ubuntu.com/precise/fio) the Fio version is before 2.0.3 and therefore the terse output is not of version 3.

Ah yes, good point, I always seem to assume that people are running fio out of the git repo. But yes, the IOPS is a recent(ish) addition. Though 2.0.3 is more than a year old at this point.

Quoted 2 lines

As Jens said, you can also switch to JSON format instead.
So maybe you are stuck to use Fio from the git repo to have a newer version.

Yep, json is an even newer addition than terse v3, so an update is in order in any case.

Signature · 1 line
Jens Axboe