qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Robert Vineyard <vineyard@tuffmail.com>
To: Richard Davies <richard@arachsys.com>
Cc: Avi Kivity <avi@redhat.com>, kvm@vger.kernel.org, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Windows slow boot: contractor wanted
Date: Fri, 17 Aug 2012 09:02:08 -0400	[thread overview]
Message-ID: <502E40D0.8030802@tuffmail.com> (raw)
In-Reply-To: <20120817123642.GA16736@alpha.arachsys.com>

Richard,

Not sure if you've tried this, but I noticed massive performance gains 
(easily booting 2-3 times as fast) by converting from RAW disk images to 
direct-mapped raw partitions and making sure that IOMMU support was 
enabled in the BIOS and in the kernel at boot time. The obvious downside 
to using raw partitions is a loss of flexibility and portability across 
physical machines, but in some cases the trade-offs may be worth it.

I never ran any formal benchmarks, but it "felt" like about a 50% 
performance boost going from RAW disk images to raw partitions (don't 
even think about using QCOW2 disk images for Windows, your VM's will 
still be booting next week...). The real gains, which I can't yet fully 
explain, came from passing "iommu=on intel_iommu=on" to the host kernel 
on bootup. I believe the boot option to enable IOMMU support may be 
different on AMD hardware.

Granted, this is on a much smaller VM than you're using (Windows 7 x64 
with two vCPUs and 4gb of vRAM), but might be worth investigating.

Good luck!

-- Robert Vineyard


On 08/17/2012 08:36 AM, Richard Davies wrote:
> Hi Avi,
>
> Thanks to you and several others for offering help. We will work with Avi at
> first, but are grateful for all the other offers of help. We have a number
> of other qemu-related projects which we'd be interested in getting done, and
> will get in touch with these names (and anyone else who comes forward) to
> see if any are of interest to you.
>
>
> This slow boot problem is intermittent and varys in how slow the boots are,
> but I managed to trigger it this morning with medium slow booting (5-10
> minutes) and link to the requested traces below.
>
> The host in question has 128GB RAM and dual AMD Opteron 6128 (16 cores
> total). It is running kernel 3.5.1 and qemu-kvm 1.1.1.
>
> In this morning's test, we have 3 guests, all booting Windows with 40GB RAM
> and 8 cores each (we have seen small VMs go slow as I originally said, but
> it is easier to trigger with big VMs):
>
> pid 15665: qemu-kvm -nodefaults -m 40960 -smp 8 -cpu host,hv_relaxed \
>    -vga cirrus -usbdevice tablet -vnc :99 -monitor stdio -hda test1.raw
> pid 15676: qemu-kvm -nodefaults -m 40960 -smp 8 -cpu host,hv_relaxed \
>    -vga cirrus -usbdevice tablet -vnc :98 -monitor stdio -hda test2.raw
> pid 15653: qemu-kvm -nodefaults -m 40960 -smp 8 -cpu host,hv_relaxed \
>    -vga cirrus -usbdevice tablet -vnc :97 -monitor stdio -hda test3.raw
>
> We are running with hv_relaxed since this was suggested in the previous
> thread, but we see intermittent slow boots with and without this flag.
>
>
> All 3 VMs are booting slowly for most of the attached capture, which I
> started after confirming the slow boots and stopped as soon as the first of
> them (15665) had booted. In terms of visible symptoms, the VMs are showing
> the Windows boot progress bar, which is moving very slowly. In top, the VMs
> are at 400% CPU and their resident state size (RES) memory is slowly
> counting up until it reaches the full VM size, at which point they finish
> booting.
>
>
> Here are the trace files:
>
> http://users.org.uk/slow-win-boot-1/ps.txt (ps auxwwwf as root)
> http://users.org.uk/slow-win-boot-1/top.txt (top with 2 VMs still slow)
> http://users.org.uk/slow-win-boot-1/trace-console.txt (running trace-cmd)
> http://users.org.uk/slow-win-boot-1/trace.dat (the 1.7G trace data file)
> http://users.org.uk/slow-win-boot-1/trace-report.txt (the 4G trace report)
>
>
> Please let me know if there is anything else which I can provide?
>
> Thank you,
>
> Richard.
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

  reply	other threads:[~2012-08-17 13:02 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-16 10:47 [Qemu-devel] Windows slow boot: contractor wanted Richard Davies
2012-08-16 11:39 ` Avi Kivity
2012-08-17 12:36   ` Richard Davies
2012-08-17 13:02     ` Robert Vineyard [this message]
2012-08-18 14:44       ` Richard Davies
2012-08-19  5:02     ` Brian Jackson
2012-08-20  8:16       ` Richard Davies
2012-08-19  8:40     ` Avi Kivity
2012-08-19  8:51       ` Richard Davies
2012-08-19 14:04     ` Avi Kivity
2012-08-20 13:56       ` Richard Davies
2012-08-21  9:00         ` Avi Kivity
2012-08-21 15:21           ` Richard Davies
2012-08-21 15:39             ` Troy Benjegerdes
2012-08-22  9:08             ` Avi Kivity
2012-08-22 12:40               ` Richard Davies
2012-08-22 12:44                 ` Avi Kivity
2012-08-22 14:41                   ` Richard Davies
2012-08-22 14:53                     ` Avi Kivity
2012-08-22 15:26                       ` Richard Davies
2012-08-22 17:22                       ` Troy Benjegerdes
2012-08-25 17:51                         ` Richard Davies
2012-08-22 15:21                     ` Rik van Riel
2012-08-22 15:34                       ` Richard Davies
2012-08-25 17:45                       ` Richard Davies
2012-08-25 18:11                         ` Rik van Riel
2012-08-26 10:58                           ` Richard Davies
2012-09-06  9:20                             ` Richard Davies
2012-09-12 10:56                               ` [Qemu-devel] Windows VM slow boot Richard Davies
2012-09-12 12:25                                 ` Mel Gorman
2012-09-12 16:46                                   ` Richard Davies
2012-09-13  9:50                                     ` Mel Gorman
2012-09-13 19:47                                     ` [Qemu-devel] [PATCH 1/2] Revert "mm: have order > 0 compaction start near a pageblock with free pages" Rik van Riel
2012-09-13 19:48                                     ` [Qemu-devel] [PATCH 2/2] make the compaction "skip ahead" logic robust Rik van Riel
2012-09-13 19:54                                       ` [Qemu-devel] [PATCH -v2 " Rik van Riel
2012-09-15 15:55                                         ` Richard Davies
2012-09-16 19:12                                           ` Richard Davies
2012-09-17 12:26                                           ` Mel Gorman
2012-09-18  8:14                                             ` Richard Davies
2012-09-18 11:21                                               ` Mel Gorman
2012-09-18 17:58                                                 ` Richard Davies
2012-09-17 13:50                                           ` Rik van Riel
2012-09-17 14:07                                             ` Mel Gorman
2012-08-16 14:10 ` [Qemu-devel] Windows slow boot: contractor wanted Benoît Canet
2012-08-16 15:53 ` Troy Benjegerdes
2012-09-18 15:12 ` [Qemu-devel] Windows slow boot Michael Tokarev

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=502E40D0.8030802@tuffmail.com \
    --to=vineyard@tuffmail.com \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard@arachsys.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;
as well as URLs for NNTP newsgroup(s).