All of lore.kernel.org
 help / color / mirror / Atom feed
From: Keith Busch <kbusch@meta.com>
To: <fio@vger.kernel.org>
Cc: <axboe@kernel.dk>, <vincentfu@gmail.com>,
	Keith Busch <kbusch@kernel.org>
Subject: [PATCH 0/3] fio: fix eta
Date: Thu, 3 Sep 2026 10:20:58 -0700	[thread overview]
Message-ID: <20260903172101.1886315-1-kbusch@meta.com> (raw)

From: Keith Busch <kbusch@kernel.org>

When jobs are overlapping or serialized by the stonewall, the eta
calculation messes up by restarting back to the original calculated
time. Here's a simple example of running multiple 5 second jobs with the
stonewall to serialize them:

  $ fio --eta-newline=1 --name=global --ioengine=io_uring --rw=randread \
      --filename=/dev/zero --time_based --runtime=5 --size=10T --stonewall \
      --name=a --name=b --name=c --name=d --name=e
  ...
  Jobs: 1 (f=1): [r(1),P(4)][15.4%][r=837MiB/s][r=214k IOPS][eta 00m:22s]
  Jobs: 1 (f=1): [r(1),P(4)][19.2%][r=737MiB/s][r=189k IOPS][eta 00m:21s]
  Jobs: 1 (f=1): [_(1),r(1),P(3)][25.0%][r=1569MiB/s][r=402k IOPS][eta 00m:24s]
  Jobs: 1 (f=1): [_(1),r(1),P(3)][31.2%][r=2045MiB/s][r=523k IOPS][eta 00m:22s]
  Jobs: 1 (f=1): [_(1),r(1),P(3)][37.5%][r=1722MiB/s][r=441k IOPS][eta 00m:20s]
  Jobs: 1 (f=1): [_(2),r(1),P(2)][35.1%][r=374MiB/s][r=95.6k IOPS][eta 00m:24s]
  Jobs: 1 (f=1): [_(2),r(1),P(2)][40.5%][r=2193MiB/s][r=561k IOPS][eta 00m:22s]

Literally unplayable! ;)

This series gets the eta reporting the correct value.

Keith Busch (3):
  eta: don't estimate runtime from an unset job epoch
  eta: cap the ETA at the job's own remaining runtime
  eta: remove now unused done_secs

 backend.c |  2 --
 eta.c     | 39 +++++++++++++++++++++++++++++----------
 fio.h     |  1 -
 libfio.c  |  1 -
 4 files changed, 29 insertions(+), 14 deletions(-)

-- 
2.52.0


             reply	other threads:[~2026-09-03 17:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-03 17:20 Keith Busch [this message]
2026-09-03 17:20 ` [PATCH 1/3] eta: don't estimate runtime from an unset job epoch Keith Busch
2026-09-09 17:01   ` Vincent Fu
2026-09-09 20:15     ` Keith Busch
2026-09-03 17:21 ` [PATCH 2/3] eta: cap the ETA at the job's own remaining runtime Keith Busch
2026-09-03 17:21 ` [PATCH 3/3] eta: remove now unused done_secs Keith Busch
2026-09-03 20:01 ` [PATCH 0/3] fio: fix eta fiotestbot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260903172101.1886315-1-kbusch@meta.com \
    --to=kbusch@meta.com \
    --cc=axboe@kernel.dk \
    --cc=fio@vger.kernel.org \
    --cc=kbusch@kernel.org \
    --cc=vincentfu@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.