From: Jens Axboe <axboe@kernel.dk>
To: brian arb <brianjamesarb@gmail.com>
Cc: fio@vger.kernel.org
Subject: Re: fio is being killed by the oom-killer after fio verify runs for some time ~13 hours
Date: Mon, 21 Jan 2013 14:29:25 -0700 [thread overview]
Message-ID: <20130121212925.GA1300@kernel.dk> (raw)
In-Reply-To: <20130118204040.GT3571@kernel.dk>
On Fri, Jan 18 2013, Jens Axboe wrote:
> On Fri, Jan 18 2013, brian arb wrote:
> > adding the option --verify_backlog=1024 resolved my issue.
> > On a side note how would one determine what the optimum number is for this
> > option?
>
> It's easier if you know the internals... The version you are running
> will store some metadata for each block written, for verification
> purposes. Standard install is 80 bytes per block. So if you have a 2TB
> disk and use 4K IO sizes, the memory required runs into the gigabytes.
> Quite unfortunate, really, will be fixed up shortly.
>
> In any case, with a backlog of just 1024, you wont use more than 80KB
> memory for verifies. So you could easily size it larger. I'd improve the
> option documentation, but I think it's better to just improve fio to not
> require the stored meta data to be able to verify. It will be in the
> 2.0.14 release.
Current -git has it implemented. If you do your normal verify workload
but add --experimental_verify=1 to the options, it wont track meta data
needed for verify, but rather just re-wind the various attributes to
replay the workload for read and verify instead. Just tested it on one
box here, bringing the needed memory down for a job from 25G to 1M. The
worst part about the verify memory consumption was the slowly growing
job, meaning that it could have the OOM consequences that you described
for long running jobs. No allocations are taking place for IO when
experimental_verify is set now.
Side note, this doesn't work for mixed write/trim workloads for now. We
need a bit of extra tracking for that.
--
Jens Axboe
next prev parent reply other threads:[~2013-01-21 21:29 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-10 20:57 fio is being killed by the oom-killer after fio verify runs for some time ~13 hours brian arb
2013-01-10 21:09 ` Chris Worley
2013-01-11 9:10 ` Jens Axboe
2013-01-12 8:51 ` Jens Axboe
2013-01-18 17:25 ` brian arb
2013-01-18 20:40 ` Jens Axboe
2013-01-21 21:29 ` Jens Axboe [this message]
2013-01-23 18:21 ` Jens Axboe
2013-01-23 18:52 ` brian arb
2013-01-25 20:03 ` brian arb
2013-01-25 20:06 ` brian arb
2013-01-25 21:22 ` Jens Axboe
2013-01-25 21:28 ` brian arb
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=20130121212925.GA1300@kernel.dk \
--to=axboe@kernel.dk \
--cc=brianjamesarb@gmail.com \
--cc=fio@vger.kernel.org \
/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.