qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Juan Quintela <quintela@redhat.com>
To: Qemu Devel <qemu-devel@nongnu.org>,
	Anthony Liguori <aliguori@us.ibm.com>
Subject: [Qemu-devel] [PATCH 0/4] migration stats fixes
Date: Fri,  1 Feb 2013 13:32:52 +0100	[thread overview]
Message-ID: <1359721976-19238-1-git-send-email-quintela@redhat.com> (raw)

Hi

migration expected_downtime calculation was removed on commit
e4ed1541ac9413eac494a03532e34beaf8a7d1c5.

We add the calculation back.  Before doing the calculation we do:

- expected_downtime intial value is max_downtime.  Much, much better
  intial value than 0.

- we move when we measure the time.  We used to measure how much it
  took "before" we really sent the data.

- we introduce sleep_time concept.  While we are sleeping because we
  have sent all the allowed data for this second we shouldn't be
  accounting that time as "sending".

- last patch just introduces the re-calculation of expected_downtime.

It just changes the stats value.  Well, patchs 2 & 3 change the
bandwidth calculation for migration, but I think that we were
undercalculating it enough than it was a bug.

Without the 2 & 3 patches, the "expected_downtime" for an idle gust
was calculated as 80ms (with 30 ms default target value), and we ended
having a downtime of around 15ms.

With this patches applied, we calculate an expected downtime of around
15ms or so, and then we spent aroqund 18ms on downtime.  Notice that
we only calculate how much it takes to sent the rest of the RAM, it
just happens that there is some more data to sent that what we are calculating.

Review, please.

Later, Juan.


The following changes since commit 8a55ebf01507ab73cc458cfcd5b9cb856aba0b9e:

  Merge remote-tracking branch 'afaerber/qom-cpu' into staging (2013-01-31 19:37:33 -0600)

are available in the git repository at:


  git://repo.or.cz/qemu/quintela.git stats.next

for you to fetch changes up to 791128495e3546ccc88dd037ea4dfd31eca14a56:

  migration: calculate expected_downtime (2013-02-01 13:22:37 +0100)

----------------------------------------------------------------
Juan Quintela (4):
      migration: change initial value of expected_downtime
      migration: calculate end time after we have sent the data
      migration: don't account sleep time for calculating bandwidth
      migration: calculate expected_downtime

 arch_init.c                   |  1 +
 include/migration/migration.h |  1 +
 migration.c                   | 15 +++++++++++++--
 3 files changed, 15 insertions(+), 2 deletions(-)

             reply	other threads:[~2013-02-01 12:33 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-01 12:32 Juan Quintela [this message]
2013-02-01 12:32 ` [Qemu-devel] [PATCH 1/4] migration: change initial value of expected_downtime Juan Quintela
2013-02-01 12:32 ` [Qemu-devel] [PATCH 2/4] migration: calculate end time after we have sent the data Juan Quintela
2013-02-01 12:32 ` [Qemu-devel] [PATCH 3/4] migration: don't account sleep time for calculating bandwidth Juan Quintela
2013-02-01 12:32 ` [Qemu-devel] [PATCH 4/4] migration: calculate expected_downtime Juan Quintela

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=1359721976-19238-1-git-send-email-quintela@redhat.com \
    --to=quintela@redhat.com \
    --cc=aliguori@us.ibm.com \
    --cc=qemu-devel@nongnu.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 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).