linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3 v2] jbd2 performance improvements
@ 2013-01-31 17:53 Theodore Ts'o
  2013-01-31 17:53 ` [PATCH 1/3] jbd2: don't wake kjournald unnecessarily Theodore Ts'o
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Theodore Ts'o @ 2013-01-31 17:53 UTC (permalink / raw)
  To: Ext4 Developers List; +Cc: Theodore Ts'o

I've added a patch which tracks the delay between when a commit was
first requested, and when the commit thread actually starts processing
the commit.  In addition to helping to assess the effects of the "commit
as soon as possible after log_start_commit", it is also useful in
debugging problems caused by real time processes which might interfere
with the kjournald thread (since we've had one user ask a question about
this already).

There are other performance metrics that we should consider adding,
including:

*) using a per-cpu variable to track t_max_wait, so we can measure this
   performance metric without incurring a scalability penalty; we
   currently disable this unless debugging is enabled, which is
   unfortunate.
*) how many handles are getting blocked waiting for a transaction to
   finish, and not just the max wait time
*) keeping statistics of why various commits have been started (was it
   due to an explicit fsync, or due to O_SYNC, or due to the transaction
   time expiring --- and in the latter case, whether it is due to an
   expiry while the file system was idle, and hence was picked up by
   kjournald, or during the stop_this_handle processing)

But these are things we can save for another time...

        	      	     	    	     - Ted

Eric Sandeen (1):
  jbd2: don't wake kjournald unnecessarily

Theodore Ts'o (2):
  jbd2: commit as soon as possible after log_start_commit
  jbd2: track request delay statistics

 fs/jbd2/commit.c            | 13 ++++++++++++-
 fs/jbd2/journal.c           | 17 ++++++++++++++---
 fs/jbd2/transaction.c       |  7 +++++--
 include/linux/jbd2.h        |  8 ++++++++
 include/trace/events/jbd2.h |  8 ++++++--
 5 files changed, 45 insertions(+), 8 deletions(-)

-- 
1.7.12.rc0.22.gcdd159b


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

end of thread, other threads:[~2013-02-04 21:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-31 17:53 [PATCH 0/3 v2] jbd2 performance improvements Theodore Ts'o
2013-01-31 17:53 ` [PATCH 1/3] jbd2: don't wake kjournald unnecessarily Theodore Ts'o
2013-01-31 17:53 ` [PATCH 2/3] jbd2: commit as soon as possible after log_start_commit Theodore Ts'o
2013-02-04 21:02   ` Theodore Ts'o
2013-01-31 17:53 ` [PATCH 3/3] jbd2: track request delay statistics Theodore Ts'o

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).