From: Waiman Long <waiman.long@hpe.com>
To: Tejun Heo <tj@kernel.org>
Cc: Theodore Ts'o <tytso@mit.edu>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Christoph Lameter <cl@linux.com>, <linux-ext4@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
Scott J Norton <scott.norton@hpe.com>,
Douglas Hatch <doug.hatch@hpe.com>,
Toshimitsu Kani <toshi.kani@hpe.com>
Subject: Re: [PATCH 2/3] percpu_stats: Simple per-cpu statistics count helper functions
Date: Thu, 7 Apr 2016 16:37:06 -0400 [thread overview]
Message-ID: <5706C4F2.6020108@hpe.com> (raw)
In-Reply-To: <20160407185827.GH7822@mtj.duckdns.org>
On 04/07/2016 02:58 PM, Tejun Heo wrote:
> Hello, Waiman.
>
> On Thu, Apr 07, 2016 at 02:52:33PM -0400, Waiman Long wrote:
>> As long as atomic reset is an optional feature that caller can choose at
>> init time, I am OK to provide this functionality. I just don't want it to be
>> the default because of the performance overhead.
> Please take a look at how percpu-ref coordinates global
> synchronization. The hot path overhead is one branch which is
> extremely easy to predict and shouldn't show up anywhere. If you're
> gonna provide reset at all (which btw always kinda baffles me, what's
> wrong with taking a snapshot value and taking delta from there?), you
> need to make it actually work reliably.
>
> Thanks.
>
I would say that because I am lazy, I don't want compute the deltas
every time I want to see the effect of running a certain type of
workload on the statistics counts. I have use case that I need to track
10 or so statistics counts and monitor their changes after running a
job. It is much more convenient to do a reset and see what you get than
doing manual subtractions to find out.
I had taken a look at percpu-refcount.[ch]. I think the synchronization
code is a bit overkill for this purpose as no one really need a very
precise statistics counts nor precise atomic reset. I would prefer
providing an optional atomic reset feature with slower statistics count
update path for the time being. If we come across a use case where we
need atomic reset with negligible slowdown, we could then refactor the
code to use something similar to what the percpu-refcount code is doing.
Cheers,
Longman
next prev parent reply other threads:[~2016-04-07 20:37 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-02 3:09 [PATCH 0/3] ext4: Improve parallel I/O performance on NVDIMM Waiman Long
2016-04-02 3:09 ` [PATCH 1/3] ext4: Pass in DIO_SKIP_DIO_COUNT flag if inode_dio_begin() called Waiman Long
2016-04-02 3:09 ` [PATCH 2/3] percpu_stats: Simple per-cpu statistics count helper functions Waiman Long
2016-04-04 7:36 ` Nikolay Borisov
2016-04-04 17:11 ` Waiman Long
2016-04-04 19:09 ` Christoph Lameter
2016-04-06 21:53 ` Waiman Long
2016-04-04 16:02 ` Tejun Heo
2016-04-06 19:52 ` Waiman Long
2016-04-06 21:51 ` Waiman Long
2016-04-06 22:54 ` Tejun Heo
2016-04-07 15:58 ` Waiman Long
2016-04-07 16:06 ` Tejun Heo
2016-04-07 18:52 ` Waiman Long
2016-04-07 18:58 ` Tejun Heo
2016-04-07 20:37 ` Waiman Long [this message]
2016-04-07 20:41 ` Tejun Heo
2016-04-07 21:38 ` Waiman Long
2016-04-02 3:09 ` [PATCH 3/3] ext4: Make cache hits/misses per-cpu counts Waiman Long
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=5706C4F2.6020108@hpe.com \
--to=waiman.long@hpe.com \
--cc=adilger.kernel@dilger.ca \
--cc=cl@linux.com \
--cc=doug.hatch@hpe.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=scott.norton@hpe.com \
--cc=tj@kernel.org \
--cc=toshi.kani@hpe.com \
--cc=tytso@mit.edu \
/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.