RE: Don't benchmark with fio

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

 



You might look into ioping.  You can configure it to read/write a set number of requests of a specific size and to bypass caching if desired.

https://manpages.debian.org/testing/ioping/ioping.1.en.html

https://github.com/koct9i/ioping


> -----Original Message-----
> From: fio-owner@xxxxxxxxxxxxxxx <fio-owner@xxxxxxxxxxxxxxx> On Behalf Of
> Seena Fallah
> Sent: Sunday, April 26, 2020 8:30 AM
> To: Sitsofe Wheeler <sitsofe@xxxxxxxxx>
> Cc: Yigal Korman <ykorman@xxxxxxxxx>; Damien Le Moal
> <Damien.LeMoal@xxxxxxx>; fio@xxxxxxxxxxxxxxx
> Subject: Re: Don't benchmark with fio
> 
> On Sun, Apr 26, 2020 at 7:33 PM Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
> >
> > On Sun, 26 Apr 2020 at 14:17, Seena Fallah <seenafallah@xxxxxxxxx> wrote:
> > >
> > > Thanks all for your replies.
> > >
> > > Maybe if you like it would be a good feature in fio to support this
> > > type of needs :)
> > >
> >
> > cd /to/filesystem; fio --size=100k --bs=4k --rw=write
> > --name=notabenchmark
> >
> > ? Obviously this could go only to the cache so maybe you want
> > end_fsync=1
> > (https://fio.readthedocs.io/en/latest/fio_man.html#cmdoption-arg-end-f
> > sync
> > ) etc. If you really want to do only one I/O I suppose you could
> > change the block size to 100k...
> 
> I have tried it but still going to benchmark. I just want to read/write for example
> 4 IO to see how long does it take?
> 
> > > I have one more question about xfs_io, I don't know if it's a right
> > > place but if it not I'm sorry. I have run xfs_io and gets this result:
> > > 100.000000 bytes, 1 ops; 0.0000 sec (1.514 MiB/sec and 15873.0159
> > > ops/sec) What is the 15873.0159 ops/sec? Did xfs_io really do 15873.0159
> iops or 1iops?
> >
> > What if it did only 1 op but timed how long it took to do all the I/O
> > (e.g. around 63 microseconds)? When you average that out...
> 
> The main goal is I am writing a prober for my file system that is attack to a vm
> for example and I don't want to load on my file system.
> I just want to probe it and see if it writes 4 IO in a time that was done last time
> or not?
> 
> > You can see the code here:
> > https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/tree/io/pwrite.
> > c#n468
> 
> I see the code but it wasn't in a pattern I have sent to you. Am I wrong?
>  .
> >
> > > On Fri, Apr 24, 2020 at 11:39 AM Yigal Korman <ykorman@xxxxxxxxx>
> wrote:
> > > >
> > > > On Fri, Apr 24, 2020 at 6:16 AM Damien Le Moal
> <Damien.LeMoal@xxxxxxx> wrote:
> > > > >
> > > > > On 2020/04/24 12:11, Damien Le Moal wrote:
> > > > > > On 2020/04/23 23:41, Seena Fallah wrote:
> > > > > >> Hi all.
> > > > > >>
> > > > > >> I'm trying to probe my file system with fio. I don't want to
> > > > > >> benchmark my file system. The only thing I want do is to for
> > > > > >> example write 100K file on a file system and then check how
> > > > > >> much IO does it take to write and the bandwidth and the runtime.
> > > > > >> The main thing I want is to just write that file size and don't bench on
> that.
> > > > > >> Can anyone help me which ioengine or which args should I use to do
> this probe?
> > > > > >>
> > > > > >> Thanks.
> > > > > >>
> > > > > >
> > > > > > dd if=/dev/zero of=/path/to/your/file/to/write bs=100K count=i
> > > > > > conv=fsync
> > > > > >
> > > > >
> > > > > Oops... Should be:
> > > > >
> > > > > dd if=/dev/zero of=/path/to/your/file/to/write bs=100K count=1
> > > > > conv=fsync
> > > > >
> > > > > obviously for 100K :)
> > > > >
> > > > > You will get the write bandwidth with this. For knowing how many
> > > > > IOs this take, you will need to trace the kernel IO stack
> > > > > (blktrace). No way to know this exactly from user space, that is, if by "IO"
> you mean "storage device commands".
> > > > > If by "IO" you mean "system calls", then with the above command,
> > > > > it will be exactly 1 "write()" call (use strace to see it).
> > > > >
> > > > > --
> > > > > Damien Le Moal
> > > > > Western Digital Research
> > > >
> > > > Yeah, fio might not be the best tool for this purpose.
> > > > As Damien said - 'dd' is a good alternative.
> > > > You could also use the xfs_io tool.
> > > > It's not really xfs related, it's a general i/o and filesystem operations tool.
> > > > It's part of the xfsprogs package and most likely already
> > > > installed on your host.
> > > > Here's an example:
> > > >
> > > > xfs_io -c "pwrite 0 100" -f /path/to/file
> > > >
> > > > Writes 100 bytes at offset 0 to the file.
> > > > It will give you some timing info and bandwidth stats.
> > > >
> > > > Yigal
> >
> > --
> > Sitsofe | http://sucs.org/~sits/




[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