Re: Valid Benchmark Value & Methods

Dave Chinner
2015-05-07T22:55:29Z

On Thu, May 07, 2015 at 07:16:02PM +0700, Dewangga wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hello Martin,
> Thanks for your reply, yes I've read that link, but another question,
> is noatime,nodiratime,etc still valid for performance tuning guidance?

You may have read it, but I don't think it sunk in....

> Even the default mount options only "rw,inode64,seclabel,attr2".

Where's relatime(*)? That's been a default for a lot longer than
inode64...

$ grep "root " /proc/mounts
/dev/root / xfs rw,relatime,attr2,inode64,noquota 0 0
$

> Is it still increase the performance if the additional mount options
> added?

Depends on your workload, which is more critical to understand than
anything else. Why? because it's your workload that is going to
determine if twiddling a knob is going to have any effect on
performance. Once you understand the workload and what the
bottlenecks are, then you can look at what knobs the filesystem
provides to alleviate those bottlenecks.

IOWs, asking the question "how do I tune my filesystem for best
performance" is, fundamentally, the wrong way to go about obtaining
best filesystem performance. The questions that need to be answered
are "what bottlenecks does my application have?" followed by "what
does the filesystem provide to alleviate those bottlenecks".

i.e. understand the problem you need to solve *before* you try to
solve it, otherwise you "solve" the wrong problem...

Cheers,

Dave.

(*) An example of exactly what I'm talking abou there. The default
option of relatime gets >95% of the benefit of noatime onmost
workloads compared to the old strictatime behaviour, but unlike
noatime it still retains atime updates. IOWs there's a pretty good
chance that noatime has little measurable impact on your
application's performance, but understanding and benchmarking
anything other than your application won't tell you this.

--
Dave Chinner
david@fromorbit.com