public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Prasad Joshi <prasadjoshi124@gmail.com>
Cc: kvm@vger.kernel.org, penberg@kernel.org, asias.hejun@gmail.com,
	gorcunov@gmail.com, levinsasha928@gmail.com,
	chaitanyakulkarni15@gmail.com, ashwini.kulkarni@gmail.com
Subject: Re: [PATCH v2] kvm tools: Add QCOW level2 caching support
Date: Thu, 2 Jun 2011 09:28:50 +0200	[thread overview]
Message-ID: <20110602072850.GC2150@elte.hu> (raw)
In-Reply-To: <1306956366-4634-1-git-send-email-prasadjoshi124@gmail.com>


* Prasad Joshi <prasadjoshi124@gmail.com> wrote:

> Summary of performance numbers
> ==============================
> There is not much difference with sequential character operations are
> performed, the code with caching performed better by small margin. The caching
> code performance raised by 12% with sequential block output and dropped by
> 0.5% with sequential block input. The caching code also suffered with
> Random seeks and performed badly by 12%. The performance numbers drastically
> improved with sequential creates (62%) and delete operations (30%).

Looking at the numbers i think it's pretty clear that from this point 
on the quality of IO tests should be improved: Bonnie is too noisy 
and does not cut it anymore for finer enhancements.

To make measurements easier you could also do a simple trick: put 
*all* of the disk image into /dev/shm and add a command-line debug 
option that add a fixed-amount udelay(1000) call every time the code 
reads from the disk image.

This introduces a ~1msec delay and thus simulates IO, but the delays 
are *constant* [make sure you use a high-res timers kernel], so they 
do not result in nearly as much measurement noise as real block IO 
does.

The IO delays will still be there, so any caching advantages (and CPU 
overhead reductions) will be measurable very clearly.

This way you are basically 'emulating' a real disk drive but you will 
emulate uniform latencies, which makes measurements a lot more 
reliable - while still relevant to the end result.

So if under such a measurement model you can prove an improvement 
with a patch, that improvement will be there with real disks as well 
- just harder to prove.

Wanna try this? I really think you are hitting the limits of your 
current measurement methodology and you will be wasting time running 
more measurements instead of saving time doing more intelligent 
measurements ;-)

Thanks,

	Ingo

  reply	other threads:[~2011-06-02  7:29 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-01 19:26 [PATCH v2] kvm tools: Add QCOW level2 caching support Prasad Joshi
2011-06-02  7:28 ` Ingo Molnar [this message]
2011-06-02  8:36   ` Prasad Joshi
2011-06-02  8:57     ` Ingo Molnar
2011-06-02 16:59     ` Prasad Joshi
2011-06-02  9:16   ` Ingo Molnar

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=20110602072850.GC2150@elte.hu \
    --to=mingo@elte.hu \
    --cc=ashwini.kulkarni@gmail.com \
    --cc=asias.hejun@gmail.com \
    --cc=chaitanyakulkarni15@gmail.com \
    --cc=gorcunov@gmail.com \
    --cc=kvm@vger.kernel.org \
    --cc=levinsasha928@gmail.com \
    --cc=penberg@kernel.org \
    --cc=prasadjoshi124@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox