All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sage Weil <sage@newdream.net>
To: "Bartłomiej Święcki" <bartlomiej.swiecki@corp.ovh.com>
Cc: Ceph Development <ceph-devel@vger.kernel.org>
Subject: Re: Proposition - latency histogram
Date: Mon, 28 Nov 2016 16:51:38 +0000 (UTC)	[thread overview]
Message-ID: <alpine.DEB.2.11.1611281648510.28496@piezo.us.to> (raw)
In-Reply-To: <69bf4eec-3959-f021-ad8f-d1b6d3e2ceaf@corp.ovh.com>

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1362 bytes --]

On Mon, 28 Nov 2016, Bartłomiej Święcki wrote:
> Hi,
> 
> Currently we can query OSD for op latency but it's given as an average. 
> Average may not give the bets information in this case - i.e. spikes can 
> easily get hidden there.
> 
> Instead of an average we could easily do a simple histogram - quantize 
> the latency into predefined set of time intervals, for each of them have 
> a simple performance counter, at each op increase one of them. Since 
> those are per OSD, we could have pretty high resolution with fractional 
> memory usage, performance impact should be negligible since only one 
> (two if split into read and write) of those counters would be 
> incremented per one osd op.
> 
> In addition we could also do this in 2D - each counter matching given 
> latency range and op size range. having such 2D table would show both 
> latency histogram, request size histogram and combinations of those 
> (i.e. latency histogram of ~4k ops only).
> 
> What do you think about this idea? I can prepare some code - a simple proof of
> concept looks really
> straightforward to implement.

This sounds like a great idea.  I think the main issue is that the data 
won't be easily exposed via the perfcounter interface... at least not in a 
way that generic tools can visualize.  Unless there is a standardish way 
to report histogram metrics?

sage

  parent reply	other threads:[~2016-11-28 16:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-28 16:22 Proposition - latency histogram Bartłomiej Święcki
2016-11-28 16:46 ` Allen Samuels
2016-11-28 23:05   ` Milosz Tanski
2016-11-28 16:51 ` Sage Weil [this message]
2016-11-28 17:43   ` John Spray
2016-11-29  2:43     ` Josh Durgin
2017-01-09 11:27 ` Bartłomiej Święcki
2017-01-31 15:22   ` Bartłomiej Święcki
2017-01-31 15:33     ` Bartłomiej Święcki
2017-02-06 11:54       ` John Spray
2017-02-07 16:30         ` Bartłomiej Święcki

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=alpine.DEB.2.11.1611281648510.28496@piezo.us.to \
    --to=sage@newdream.net \
    --cc=bartlomiej.swiecki@corp.ovh.com \
    --cc=ceph-devel@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.