All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Hajnoczi <stefanha@redhat.com>
To: Yang Zhong <yang.zhong@intel.com>
Cc: pbonzini@redhat.com, berrange@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] About the light VM solution!
Date: Tue, 5 Dec 2017 12:06:23 +0000	[thread overview]
Message-ID: <20171205120623.GB31150@stefanha-x1.localdomain> (raw)
In-Reply-To: <20171205063313.GB4102@yangzhon-Virtual>

[-- Attachment #1: Type: text/plain, Size: 1841 bytes --]

On Tue, Dec 05, 2017 at 02:33:13PM +0800, Yang Zhong wrote:
> As you know, AWS has decided to switch to KVM in their clouds. This news make almost all
> china CSPs(clouds service provider) pay more attention on KVM/Qemu, especially light VM
> solution.
> 
> Below are intel solution for light VM, qemu-lite.
> http://events.linuxfoundation.org/sites/events/files/slides/Light%20weight%20virtualization%20with%20QEMU%26KVM_0.pdf
> 
> My question is whether community has some plan to implement light VM or alternative solutions? If no, whether our 
> qemu-lite solution is suitable for upstream again? Many thanks!

Booting VMs faster is appreciated upstream.  I think there is interest
in patches that further this goal and hope you have time to contribute.

What caused a lot of discussion and held back progress was the approach
that was taken.  The basic philosophy seems to be bypassing or
special-casing components in order to avoid slow operations.  This
requires special QEMU, firmware, and/or guest kernel binaries and causes
extra work for the management stack, distributions, and testers.  It is
preferrable to have just one binary and no special configuration
settings.

I think patches are more likely to be merged with the following
approach:
1. Benchmark or profile to find slow operations.
2. Perform an experiment to see if bypassing the operations improves
   performance.  If no, go back to step 1.
3. Investigate the slow operation to see if it can be optimized or
   skipped completely based on run-time knowledge.  This means no
   special '-lite' binaries or new config options.
4. Implement patches to do this, retest, and send them upstream.

My view is that qemu-lite only got to Step 2 in some cases.  Going to
Step 4 is more work but the result will be easier to merge.

Stefan

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 455 bytes --]

  reply	other threads:[~2017-12-05 12:06 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-05  6:33 [Qemu-devel] About the light VM solution! Yang Zhong
2017-12-05 12:06 ` Stefan Hajnoczi [this message]
2017-12-05 13:35   ` Paolo Bonzini
2017-12-05 13:47     ` Stefan Hajnoczi
2017-12-05 14:00       ` Paolo Bonzini
2017-12-05 16:31         ` Stefan Hajnoczi
2017-12-06  9:21           ` Gonglei (Arei)
2017-12-06 15:09             ` Stefan Hajnoczi
2017-12-07  0:49               ` Gonglei (Arei)
2017-12-06 15:11     ` Stefan Hajnoczi
2017-12-08 11:29       ` Yang Zhong
2017-12-07 12:03 ` Richard W.M. Jones

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=20171205120623.GB31150@stefanha-x1.localdomain \
    --to=stefanha@redhat.com \
    --cc=berrange@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=yang.zhong@intel.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.