fio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Using fio with adjusted parameters for use case "DB"
@ 2023-03-07 14:30 Thomas Schneider
  2023-03-07 15:22 ` Vincent Fu
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Schneider @ 2023-03-07 14:30 UTC (permalink / raw)
  To: fio

Hello,

I want to benchmark different storage devices with an I/O workload 
generated by the "real" application: DB.

A typcial command could be:
fio --name=random-writers --ioengine=libaio --iodepth=4 --rw=randwrite 
--bs=1024 --direct=1 --size=64m --numjobs=2 runtime=120s

The question is regarding parameters size and runtime:
- What value should be used for size? Should this be the same as 
allocated disk space by DB data files? Or just a (reasonable) portion of 
this? DB data files could be up to xTB.
- Is it advisable to use runtime? If yes, would this somehow contradict 
to size, means if I use a larger size, then runtime is obviously longer.


Regards
Thomas



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Using fio with adjusted parameters for use case "DB"
  2023-03-07 14:30 Using fio with adjusted parameters for use case "DB" Thomas Schneider
@ 2023-03-07 15:22 ` Vincent Fu
  2023-03-08 13:46   ` Thomas Schneider
  0 siblings, 1 reply; 4+ messages in thread
From: Vincent Fu @ 2023-03-07 15:22 UTC (permalink / raw)
  To: Thomas Schneider, fio

On 3/7/23 09:30, Thomas Schneider wrote:
> Hello,
> 
> I want to benchmark different storage devices with an I/O workload 
> generated by the "real" application: DB.
> 
> A typcial command could be:
> fio --name=random-writers --ioengine=libaio --iodepth=4 --rw=randwrite 
> --bs=1024 --direct=1 --size=64m --numjobs=2 runtime=120s
> 
> The question is regarding parameters size and runtime:
> - What value should be used for size? Should this be the same as 
> allocated disk space by DB data files? Or just a (reasonable) portion of 
> this? DB data files could be up to xTB.
> - Is it advisable to use runtime? If yes, would this somehow contradict 
> to size, means if I use a larger size, then runtime is obviously longer.
> 

The documentation for runtime is here:

https://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-runtime

Fio will write within the LBAs bounded by offset and size and stop when 
it has touched all the LBAs or when runtime is attained. Run some 
experiments with --debug=io to better understand fio's behavior.

Also take a look at the example job files for help:

https://github.com/axboe/fio/tree/master/examples

Vincent


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Using fio with adjusted parameters for use case "DB"
  2023-03-07 15:22 ` Vincent Fu
@ 2023-03-08 13:46   ` Thomas Schneider
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Schneider @ 2023-03-08 13:46 UTC (permalink / raw)
  To: Vincent Fu, fio

Hello,

thanks for your reply.

I have discussed with DB developers which values should be used for
- iodepth and
- numjobs

With regards to iodepth I was told that a max. value could be defined in 
DB's global ini; the default is 512.
This means the DB could use this queue depth as max. but certainly no as 
average.

Question:
 From your experience, does it make sense to run IO benchmark with 
iodepth=512?


THX



Am 07.03.2023 um 16:22 schrieb Vincent Fu:
> On 3/7/23 09:30, Thomas Schneider wrote:
>> Hello,
>>
>> I want to benchmark different storage devices with an I/O workload 
>> generated by the "real" application: DB.
>>
>> A typcial command could be:
>> fio --name=random-writers --ioengine=libaio --iodepth=4 
>> --rw=randwrite --bs=1024 --direct=1 --size=64m --numjobs=2 runtime=120s
>>
>> The question is regarding parameters size and runtime:
>> - What value should be used for size? Should this be the same as 
>> allocated disk space by DB data files? Or just a (reasonable) portion 
>> of this? DB data files could be up to xTB.
>> - Is it advisable to use runtime? If yes, would this somehow 
>> contradict to size, means if I use a larger size, then runtime is 
>> obviously longer.
>>
>
> The documentation for runtime is here:
>
> https://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-runtime
>
> Fio will write within the LBAs bounded by offset and size and stop 
> when it has touched all the LBAs or when runtime is attained. Run some 
> experiments with --debug=io to better understand fio's behavior.
>
> Also take a look at the example job files for help:
>
> https://github.com/axboe/fio/tree/master/examples
>
> Vincent
>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Using fio with adjusted parameters for use case "DB"
@ 2023-03-02  9:49 74cmonty
  0 siblings, 0 replies; 4+ messages in thread
From: 74cmonty @ 2023-03-02  9:49 UTC (permalink / raw)
  To: fio

Hello,

I want to benchmark different storage devices with an I/O workload 
generated by the "real" application: DB.

A typcial command could be:
fio --name=random-writers --ioengine=libaio --iodepth=4 --rw=randwrite 
--bs=1024 --direct=1 --size=64m --numjobs=2 runtime=120s

The question is regarding parameters size and runtime:
- What value should be used for size? Should this be the same as 
allocated disk space by DB data files? Or just a (reasonable) portion of 
this? DB data files could be up to n TB.
- Is it advisable to use runtime? If yes, would this somehow contradict 
to size, means if I use a larger size, then runtime is obviously longer.


Regards
Thomas


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-03-08 13:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-07 14:30 Using fio with adjusted parameters for use case "DB" Thomas Schneider
2023-03-07 15:22 ` Vincent Fu
2023-03-08 13:46   ` Thomas Schneider
  -- strict thread matches above, loose matches on Subject: below --
2023-03-02  9:49 74cmonty

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).