All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Nelson <mark.nelson@inktank.com>
To: Josh Durgin <josh.durgin@inktank.com>
Cc: Stefan Priebe <s.priebe@profihost.ag>,
	Sage Weil <sage@inktank.com>,
	"ceph-devel@vger.kernel.org" <ceph-devel@vger.kernel.org>
Subject: Re: extreme ceph-osd cpu load for rand. 4k write
Date: Thu, 08 Nov 2012 15:58:29 -0600	[thread overview]
Message-ID: <509C2B05.2070200@inktank.com> (raw)
In-Reply-To: <509C2939.5000201@inktank.com>

On 11/08/2012 03:50 PM, Josh Durgin wrote:
> On 11/08/2012 01:27 PM, Stefan Priebe wrote:
>> Am 08.11.2012 17:06, schrieb Mark Nelson:
>>> On 11/08/2012 09:45 AM, Stefan Priebe - Profihost AG wrote:
>>>> Am 08.11.2012 16:01, schrieb Sage Weil:
>>>>> On Thu, 8 Nov 2012, Stefan Priebe - Profihost AG wrote:
>>>>>> Is there any way to find out why a ceph-osd process takes around 10
>>>>>> times more
>>>>>> load on rand 4k writes than on 4k reads?
>>>>>
>>>>> Something like perf or oprofile is probably your best bet.  perf
>>>>> can be
>>>>> tedious to deploy, depending on where your kernel is coming from.
>>>>> oprofile seems to be deprecated, although I've had good results with
>>>>> it in
>>>>> the past.
>>>>
>>>> I've recorded 10s with perf - it is now a 300MB perf.data file. Sadly
>>>> i've no idea what todo with it next.
>>>
>>> Pour yourself a stiff drink! (haha!)
>>>
>>> Try just doing a "perf report" in the directory where you've got the
>>> data file.  Here's a nice tutorial:
>>>
>>> https://perf.wiki.kernel.org/index.php/Tutorial
>>>
>>> Also, if you see missing symbols you might benefit by chowning the file
>>> to root and running perf report as root.  If you still see missing
>>> symbols, you may want to just give up and try sysprof.
>>
>> I've now used google perftools / google CPU profiler. It was the only
>> tool who worked out of the box ;-)
>>
>> Attached is a PDF with a profiled ceph-osd process while 4k random write.
>
> It looks like a not insignificant portion of time is spent in the
> logging infrastructure. Could you add this to the osds' configuration
> to prevent any debug log gathering (it's logged/gathered):
>
> debug lockdep = 0/0
> debug context = 0/0
> debug crush = 0/0
> debug buffer = 0/0
> debug timer = 0/0
> debug journaler = 0/0
> debug osd = 0/0
> debug optracker = 0/0
> debug objclass = 0/0
> debug filestore = 0/0
> debug journal = 0/0
> debug ms = 0/0
> debug monc = 0/0
> debug tp = 0/0
> debug auth = 0/0
> debug finisher = 0/0
> debug heartbeatmap = 0/0
> debug perfcounter = 0/0
> debug asok = 0/0
> debug throttle = 0/0
>
> Josh

Also, I'm not sure what version you are running, but you may want to try 
testing master and see if that helps.  Sam has done some work on our 
threading and locking code that might help.

  reply	other threads:[~2012-11-08 21:58 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-07 20:41 extreme ceph-osd cpu load for rand. 4k write Stefan Priebe
2012-11-08 14:58 ` Stefan Priebe - Profihost AG
2012-11-08 15:01   ` Sage Weil
2012-11-08 15:45     ` Stefan Priebe - Profihost AG
2012-11-08 16:06       ` Mark Nelson
2012-11-08 21:27         ` Stefan Priebe
2012-11-08 21:50           ` Josh Durgin
2012-11-08 21:58             ` Mark Nelson [this message]
2012-11-08 22:06               ` Stefan Priebe
2012-11-08 22:31             ` Stefan Priebe
2012-11-09 10:09         ` Stefan Priebe - Profihost AG
2012-11-09 10:21           ` Stefan Priebe - Profihost AG
2012-11-09 21:21             ` Samuel Just
2012-11-09 21:34               ` Stefan Priebe - Profihost AG
2012-11-10 20:36                 ` Samuel Just
2012-11-10 20:37                   ` Samuel Just
2012-11-10 20:43                     ` Stefan Priebe
2012-11-10 20:42                   ` Stefan Priebe
2012-11-08 15:01   ` Mark Nelson
2012-11-08 15:45     ` Stefan Priebe - Profihost AG

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=509C2B05.2070200@inktank.com \
    --to=mark.nelson@inktank.com \
    --cc=ceph-devel@vger.kernel.org \
    --cc=josh.durgin@inktank.com \
    --cc=s.priebe@profihost.ag \
    --cc=sage@inktank.com \
    /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.