All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gleb Natapov <gleb@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: "David S. Ahern" <daahern@cisco.com>, Avi Kivity <avi@redhat.com>,
	kvm@vger.kernel.org, "Richard W.M. Jones" <rjones@redhat.com>,
	qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Anyone seeing huge slowdown launching qemu with Linux 2.6.35?
Date: Wed, 4 Aug 2010 18:25:52 +0300	[thread overview]
Message-ID: <20100804152552.GB10499@redhat.com> (raw)
In-Reply-To: <4C597FCD.8070703@codemonkey.ws>

On Wed, Aug 04, 2010 at 09:57:17AM -0500, Anthony Liguori wrote:
> On 08/04/2010 09:51 AM, David S. Ahern wrote:
> >
> >On 08/03/10 12:43, Avi Kivity wrote:
> >>libguestfs does not depend on an x86 architectural feature.
> >>qemu-system-x86_64 emulates a PC, and PCs don't have -kernel.  We should
> >>discourage people from depending on this interface for production use.
> >That is a feature of qemu - and an important one to me as well. Why
> >should it be discouraged? You end up at the same place -- a running
> >kernel and in-ram filesystem; why require going through a bootloader
> >just because the hardware case needs it?
> 
> It's smoke and mirrors.  We're still providing a boot loader it's
> just a little tiny one that we've written soley for this purpose.
> 
> And it works fine for production use.  The question is whether we
> ought to be aggressively optimizing it for large initrd sizes.  To
> be honest, after a lot of discussion of possibilities, I've come to
> the conclusion that it's just not worth it.
> 
> There are better ways like using string I/O and optimizing the PIO
> path in the kernel.  That should cut down the 1s slow down with a
> 100MB initrd by a bit.  But honestly, shaving a couple hundred ms
> further off the initrd load is just not worth it using the current
> model.
> 
The slow down is not 1s any more. String PIO emulation had many bugs
that were fixed in 2.6.35. I verified how much time it took to load 100M
via fw_cfg interface on older kernel and on 2.6.35. On older kernels on
my machine it took ~2-3 second on 2.6.35 it took 26s. Some optimizations
that was already committed make it 20s. I have some code prototype that
makes it 11s. I don't see how we can get below that, surely not back to
~2-3sec.

> If this is important to someone, we ought to look at refactoring the
> loader completely to be disk based which is a higher performance
> interface.
> 
> Regards,
> 
> Anthony Liguori
> 
> >David
> 
> --
> 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

--
			Gleb.

WARNING: multiple messages have this Message-ID (diff)
From: Gleb Natapov <gleb@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: qemu-devel@nongnu.org, "Richard W.M. Jones" <rjones@redhat.com>,
	Avi Kivity <avi@redhat.com>, "David S. Ahern" <daahern@cisco.com>,
	kvm@vger.kernel.org
Subject: Re: [Qemu-devel] Anyone seeing huge slowdown launching qemu with Linux 2.6.35?
Date: Wed, 4 Aug 2010 18:25:52 +0300	[thread overview]
Message-ID: <20100804152552.GB10499@redhat.com> (raw)
In-Reply-To: <4C597FCD.8070703@codemonkey.ws>

On Wed, Aug 04, 2010 at 09:57:17AM -0500, Anthony Liguori wrote:
> On 08/04/2010 09:51 AM, David S. Ahern wrote:
> >
> >On 08/03/10 12:43, Avi Kivity wrote:
> >>libguestfs does not depend on an x86 architectural feature.
> >>qemu-system-x86_64 emulates a PC, and PCs don't have -kernel.  We should
> >>discourage people from depending on this interface for production use.
> >That is a feature of qemu - and an important one to me as well. Why
> >should it be discouraged? You end up at the same place -- a running
> >kernel and in-ram filesystem; why require going through a bootloader
> >just because the hardware case needs it?
> 
> It's smoke and mirrors.  We're still providing a boot loader it's
> just a little tiny one that we've written soley for this purpose.
> 
> And it works fine for production use.  The question is whether we
> ought to be aggressively optimizing it for large initrd sizes.  To
> be honest, after a lot of discussion of possibilities, I've come to
> the conclusion that it's just not worth it.
> 
> There are better ways like using string I/O and optimizing the PIO
> path in the kernel.  That should cut down the 1s slow down with a
> 100MB initrd by a bit.  But honestly, shaving a couple hundred ms
> further off the initrd load is just not worth it using the current
> model.
> 
The slow down is not 1s any more. String PIO emulation had many bugs
that were fixed in 2.6.35. I verified how much time it took to load 100M
via fw_cfg interface on older kernel and on 2.6.35. On older kernels on
my machine it took ~2-3 second on 2.6.35 it took 26s. Some optimizations
that was already committed make it 20s. I have some code prototype that
makes it 11s. I don't see how we can get below that, surely not back to
~2-3sec.

> If this is important to someone, we ought to look at refactoring the
> loader completely to be disk based which is a higher performance
> interface.
> 
> Regards,
> 
> Anthony Liguori
> 
> >David
> 
> --
> 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

--
			Gleb.

  reply	other threads:[~2010-08-04 15:25 UTC|newest]

Thread overview: 285+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-03 11:13 [Qemu-devel] Anyone seeing huge slowdown launching qemu with Linux 2.6.35? Richard W.M. Jones
2010-08-03 11:33 ` Gleb Natapov
2010-08-03 12:10   ` Richard W.M. Jones
2010-08-03 12:37     ` Gleb Natapov
2010-08-03 12:48       ` Richard W.M. Jones
2010-08-03 13:19         ` Avi Kivity
2010-08-03 13:19           ` Avi Kivity
2010-08-03 14:05           ` Richard W.M. Jones
2010-08-03 14:38             ` Avi Kivity
2010-08-03 14:53               ` Richard W.M. Jones
2010-08-03 16:10                 ` Avi Kivity
2010-08-03 16:28                   ` Richard W.M. Jones
2010-08-03 16:44                     ` Avi Kivity
2010-08-03 16:46                       ` Anthony Liguori
2010-08-03 16:46                         ` Anthony Liguori
2010-08-03 16:50                         ` Avi Kivity
2010-08-03 16:50                           ` Avi Kivity
2010-08-03 16:53                           ` Anthony Liguori
2010-08-03 16:53                             ` Anthony Liguori
2010-08-03 17:01                             ` Avi Kivity
2010-08-03 17:01                               ` Avi Kivity
2010-08-03 17:42                               ` Anthony Liguori
2010-08-03 17:42                                 ` Anthony Liguori
2010-08-03 17:58                                 ` Avi Kivity
2010-08-03 17:58                                   ` Avi Kivity
2010-08-03 18:11                                   ` Richard W.M. Jones
2010-08-03 18:11                                     ` Richard W.M. Jones
2010-08-03 18:26                                   ` Anthony Liguori
2010-08-03 18:26                                     ` Anthony Liguori
2010-08-03 18:43                                     ` Avi Kivity
2010-08-03 18:43                                       ` Avi Kivity
2010-08-03 18:47                                       ` Avi Kivity
2010-08-03 18:47                                         ` Avi Kivity
2010-08-03 18:55                                       ` Anthony Liguori
2010-08-03 18:55                                         ` Anthony Liguori
2010-08-03 19:00                                         ` Avi Kivity
2010-08-03 19:00                                           ` Avi Kivity
2010-08-03 19:05                                       ` Gleb Natapov
2010-08-03 19:05                                         ` Gleb Natapov
2010-08-03 19:09                                         ` Avi Kivity
2010-08-03 19:09                                           ` Avi Kivity
2010-08-03 19:15                                         ` Anthony Liguori
2010-08-03 19:15                                           ` Anthony Liguori
2010-08-03 19:24                                           ` Avi Kivity
2010-08-03 19:24                                             ` Avi Kivity
2010-08-03 19:38                                             ` Anthony Liguori
2010-08-03 19:38                                               ` Anthony Liguori
2010-08-03 19:41                                               ` Avi Kivity
2010-08-03 19:41                                                 ` Avi Kivity
2010-08-03 19:47                                                 ` Anthony Liguori
2010-08-03 19:47                                                   ` Anthony Liguori
2010-08-04  5:47                                                   ` Avi Kivity
2010-08-04  5:47                                                     ` Avi Kivity
2010-08-03 21:24                                                 ` Gerd Hoffmann
2010-08-03 21:24                                                   ` Gerd Hoffmann
2010-08-03 21:20                                             ` Gerd Hoffmann
2010-08-03 21:20                                               ` Gerd Hoffmann
2010-08-04  5:53                                               ` Avi Kivity
2010-08-04  5:53                                                 ` Avi Kivity
2010-08-04  7:56                                                 ` Gerd Hoffmann
2010-08-04  7:56                                                   ` Gerd Hoffmann
2010-08-04  8:17                                                   ` Avi Kivity
2010-08-04  8:17                                                     ` Avi Kivity
2010-08-04  8:43                                                     ` Gleb Natapov
2010-08-04  8:43                                                       ` Gleb Natapov
2010-08-04  9:22                                                     ` Gerd Hoffmann
2010-08-04  9:22                                                       ` Gerd Hoffmann
2010-08-04 13:04                                                     ` Anthony Liguori
2010-08-04 13:04                                                       ` Anthony Liguori
2010-08-04 13:07                                                       ` Gleb Natapov
2010-08-04 13:07                                                         ` Gleb Natapov
2010-08-04 13:15                                                         ` Anthony Liguori
2010-08-04 13:15                                                           ` Anthony Liguori
2010-08-04 13:24                                                           ` Richard W.M. Jones
2010-08-04 13:24                                                             ` Richard W.M. Jones
2010-08-04 13:26                                                             ` Gleb Natapov
2010-08-04 13:26                                                               ` Gleb Natapov
2010-08-04 14:22                                                               ` Anthony Liguori
2010-08-04 14:22                                                                 ` Anthony Liguori
2010-08-04 14:38                                                                 ` Gleb Natapov
2010-08-04 14:38                                                                   ` Gleb Natapov
2010-08-04 14:50                                                                   ` Anthony Liguori
2010-08-04 14:50                                                                     ` Anthony Liguori
2010-08-04 15:01                                                                     ` Gleb Natapov
2010-08-04 15:01                                                                       ` Gleb Natapov
2010-08-04 15:07                                                                       ` Anthony Liguori
2010-08-04 15:07                                                                         ` Anthony Liguori
2010-08-04 15:15                                                                         ` Gleb Natapov
2010-08-04 15:15                                                                           ` Gleb Natapov
2010-08-04 22:41                                                                       ` Kevin O'Connor
2010-08-04 22:41                                                                         ` Kevin O'Connor
2010-08-04 16:26                                                             ` Avi Kivity
2010-08-04 16:26                                                               ` Avi Kivity
2010-08-04 13:34                                                           ` Gleb Natapov
2010-08-04 13:34                                                             ` Gleb Natapov
2010-08-04 13:52                                                             ` Anthony Liguori
2010-08-04 13:52                                                               ` [Qemu-devel] " Anthony Liguori
2010-08-04 14:00                                                               ` Gleb Natapov
2010-08-04 14:00                                                                 ` Gleb Natapov
2010-08-04 14:14                                                                 ` Anthony Liguori
2010-08-04 14:14                                                                   ` Anthony Liguori
2010-08-04 14:36                                                                   ` Gleb Natapov
2010-08-04 14:36                                                                     ` Gleb Natapov
2010-08-04 14:22                                                                 ` Paolo Bonzini
2010-08-04 14:22                                                                   ` Paolo Bonzini
2010-08-04 14:39                                                                   ` Anthony Liguori
2010-08-04 14:39                                                                     ` Anthony Liguori
2010-08-04 16:33                                                                     ` Avi Kivity
2010-08-04 16:33                                                                       ` Avi Kivity
2010-08-04 16:30                                                               ` Avi Kivity
2010-08-04 16:30                                                                 ` Avi Kivity
2010-08-04 16:36                                                                 ` Avi Kivity
2010-08-04 16:36                                                                   ` Avi Kivity
2010-08-04 16:44                                                                   ` Anthony Liguori
2010-08-04 16:44                                                                     ` Anthony Liguori
2010-08-04 16:52                                                                     ` Avi Kivity
2010-08-04 16:52                                                                       ` Avi Kivity
2010-08-04 17:37                                                                     ` Gleb Natapov
2010-08-04 17:37                                                                       ` Gleb Natapov
2010-08-05  7:28                                                                     ` Gerd Hoffmann
2010-08-05  7:28                                                                       ` Gerd Hoffmann
2010-08-05  7:34                                                                       ` Gleb Natapov
2010-08-05  7:34                                                                         ` Gleb Natapov
2010-08-05  7:56                                                                         ` Avi Kivity
2010-08-05  7:56                                                                           ` Avi Kivity
2010-08-05  7:59                                                                           ` Gleb Natapov
2010-08-05  7:59                                                                             ` Gleb Natapov
2010-08-05  8:45                                                                             ` Avi Kivity
2010-08-05  8:45                                                                               ` Avi Kivity
2010-08-05  8:48                                                                               ` Gleb Natapov
2010-08-05  8:48                                                                                 ` Gleb Natapov
2010-08-05 13:43                                                                       ` Anthony Liguori
2010-08-05 13:43                                                                         ` Anthony Liguori
2010-08-04 16:45                                                                   ` Alexander Graf
2010-08-04 16:45                                                                     ` Alexander Graf
2010-08-04 16:54                                                                     ` Avi Kivity
2010-08-04 16:54                                                                       ` Avi Kivity
2010-08-04 17:01                                                                       ` Alexander Graf
2010-08-04 17:01                                                                         ` Alexander Graf
2010-08-04 17:14                                                                         ` Avi Kivity
2010-08-04 17:14                                                                           ` Avi Kivity
2010-08-04 17:27                                                                           ` Alexander Graf
2010-08-04 17:27                                                                             ` Alexander Graf
2010-08-04 17:34                                                                             ` Avi Kivity
2010-08-04 17:34                                                                               ` Avi Kivity
2010-08-04 20:06                                                                               ` David S. Ahern
2010-08-04 20:06                                                                                 ` David S. Ahern
2010-08-04 20:16                                                                                 ` Richard W.M. Jones
2010-08-04 20:16                                                                                   ` Richard W.M. Jones
2010-08-05  2:38                                                                                 ` Avi Kivity
2010-08-05  2:38                                                                                   ` Avi Kivity
2010-08-04 17:26                                                                     ` Anthony Liguori
2010-08-04 17:26                                                                       ` Anthony Liguori
2010-08-04 17:31                                                                       ` Alexander Graf
2010-08-04 17:31                                                                         ` Alexander Graf
2010-08-04 17:35                                                                         ` Avi Kivity
2010-08-04 17:35                                                                           ` Avi Kivity
2010-08-04 17:36                                                                         ` Anthony Liguori
2010-08-04 17:36                                                                           ` Anthony Liguori
2010-08-04 17:36                                                                           ` Alexander Graf
2010-08-04 17:36                                                                             ` Alexander Graf
2010-08-04 17:46                                                                   ` Richard W.M. Jones
2010-08-04 17:46                                                                     ` Richard W.M. Jones
2010-08-04 17:50                                                                     ` Avi Kivity
2010-08-04 17:50                                                                       ` Avi Kivity
2010-08-04 18:13                                                                     ` Alexander Graf
2010-08-04 18:13                                                                       ` [Qemu-devel] " Alexander Graf
2010-08-04 18:16                                                                       ` Anthony Liguori
2010-08-04 18:16                                                                         ` Anthony Liguori
2010-08-04 18:18                                                                         ` Alexander Graf
2010-08-04 18:18                                                                           ` Alexander Graf
2010-08-04 18:19                                                                         ` Avi Kivity
2010-08-04 18:19                                                                           ` Avi Kivity
2010-08-04 18:18                                                                       ` Avi Kivity
2010-08-04 18:18                                                                         ` Avi Kivity
2010-08-04 16:42                                                                 ` Anthony Liguori
2010-08-04 16:42                                                                   ` Anthony Liguori
2010-08-04 13:22                                                         ` Richard W.M. Jones
2010-08-04 13:22                                                           ` Richard W.M. Jones
2010-08-04 13:29                                                           ` Gleb Natapov
2010-08-04 13:29                                                             ` Gleb Natapov
2010-08-04 16:25                                                       ` Avi Kivity
2010-08-04 16:25                                                         ` Avi Kivity
2010-08-03 22:06                                             ` Richard W.M. Jones
2010-08-03 22:06                                               ` Richard W.M. Jones
2010-08-04  5:54                                               ` Avi Kivity
2010-08-04  5:54                                                 ` Avi Kivity
2010-08-04  9:24                                                 ` Richard W.M. Jones
2010-08-04  9:24                                                   ` Richard W.M. Jones
2010-08-04  9:27                                                   ` Gleb Natapov
2010-08-04  9:27                                                     ` Gleb Natapov
2010-08-04  9:52                                                   ` Avi Kivity
2010-08-04  9:52                                                     ` Avi Kivity
2010-08-04 11:33                                                     ` Richard W.M. Jones
2010-08-04 11:33                                                       ` Richard W.M. Jones
2010-08-04 11:36                                                       ` Avi Kivity
2010-08-04 11:36                                                         ` Avi Kivity
2010-08-04 12:07                                                       ` Gleb Natapov
2010-08-04 12:07                                                         ` Gleb Natapov
2010-08-04 12:59                                                   ` Anthony Liguori
2010-08-04 12:59                                                     ` Anthony Liguori
2010-08-03 19:26                                           ` Gleb Natapov
2010-08-03 19:26                                             ` Gleb Natapov
2010-08-03 19:13                                       ` Richard W.M. Jones
2010-08-03 19:13                                         ` Richard W.M. Jones
2010-08-03 19:17                                         ` Gleb Natapov
2010-08-03 19:17                                           ` Gleb Natapov
2010-08-03 19:19                                         ` Anthony Liguori
2010-08-03 19:19                                           ` Anthony Liguori
2010-08-03 19:22                                         ` Avi Kivity
2010-08-03 19:22                                           ` Avi Kivity
2010-08-03 20:00                                           ` Richard W.M. Jones
2010-08-03 20:00                                             ` Richard W.M. Jones
2010-08-03 20:49                                             ` Anthony Liguori
2010-08-03 20:49                                               ` Anthony Liguori
2010-08-03 21:13                                               ` Paolo Bonzini
2010-08-03 21:13                                                 ` Paolo Bonzini
2010-08-03 21:34                                                 ` Anthony Liguori
2010-08-03 21:34                                                   ` Anthony Liguori
2010-08-04  7:57                                                   ` Paolo Bonzini
2010-08-04  7:57                                                     ` Paolo Bonzini
2010-08-04  8:19                                                     ` Avi Kivity
2010-08-04  8:19                                                       ` Avi Kivity
2010-08-04 12:53                                                     ` Anthony Liguori
2010-08-04 12:53                                                       ` Anthony Liguori
2010-08-04 16:44                                                       ` Avi Kivity
2010-08-04 16:44                                                         ` Avi Kivity
2010-08-04 16:46                                                         ` Anthony Liguori
2010-08-04 16:46                                                           ` Anthony Liguori
2010-08-04 16:48                                                           ` Alexander Graf
2010-08-04 16:48                                                             ` Alexander Graf
2010-08-04 16:49                                                             ` Anthony Liguori
2010-08-04 16:49                                                               ` Anthony Liguori
2010-08-04 16:51                                                               ` Alexander Graf
2010-08-04 16:51                                                                 ` Alexander Graf
2010-08-04 17:01                                                               ` Paolo Bonzini
2010-08-04 17:01                                                                 ` Paolo Bonzini
2010-08-04 17:19                                                                 ` Avi Kivity
2010-08-04 17:19                                                                   ` Avi Kivity
2010-08-04 17:25                                                                   ` Alexander Graf
2010-08-04 17:25                                                                     ` Alexander Graf
2010-08-04 17:27                                                                   ` Anthony Liguori
2010-08-04 17:27                                                                     ` Anthony Liguori
2010-08-04 17:37                                                                     ` Avi Kivity
2010-08-04 17:37                                                                       ` Avi Kivity
2010-08-04 17:53                                                                       ` Anthony Liguori
2010-08-04 17:53                                                                         ` Anthony Liguori
2010-08-04 18:05                                                                         ` Alexander Graf
2010-08-04 18:05                                                                           ` Alexander Graf
2010-08-04  5:56                                               ` Avi Kivity
2010-08-04  5:56                                                 ` Avi Kivity
2010-08-04  1:17                                             ` Jamie Lokier
2010-08-04  1:17                                               ` Jamie Lokier
2010-08-04  8:21                                         ` Avi Kivity
2010-08-04  8:21                                           ` Avi Kivity
2010-08-04 14:51                                       ` David S. Ahern
2010-08-04 14:51                                         ` David S. Ahern
2010-08-04 14:57                                         ` Anthony Liguori
2010-08-04 14:57                                           ` Anthony Liguori
2010-08-04 15:25                                           ` Gleb Natapov [this message]
2010-08-04 15:25                                             ` Gleb Natapov
2010-08-04 15:31                                             ` Alexander Graf
2010-08-04 15:31                                               ` Alexander Graf
2010-08-04 15:48                                               ` Gleb Natapov
2010-08-04 15:48                                                 ` Gleb Natapov
2010-08-04 15:59                                                 ` Alexander Graf
2010-08-04 15:59                                                   ` Alexander Graf
2010-08-04 16:08                                                   ` Gleb Natapov
2010-08-04 16:08                                                     ` Gleb Natapov
2010-08-04 16:48                                                     ` Avi Kivity
2010-08-04 16:48                                                       ` Avi Kivity
2010-08-04 23:17                                             ` Kevin O'Connor
2010-08-04 23:17                                               ` Kevin O'Connor
2010-08-05  5:26                                               ` Gleb Natapov
2010-08-05  5:26                                                 ` Gleb Natapov
2010-08-03 16:56                           ` Anthony Liguori
2010-08-03 16:56                             ` Anthony Liguori
2010-08-03 16:48                       ` Avi Kivity
2010-08-03 17:00                         ` Richard W.M. Jones
2010-08-03 17:05                           ` Avi Kivity
2010-08-03 16:56                       ` Richard W.M. Jones
2010-08-03 17:08                         ` Avi Kivity
2010-08-03 16:39                 ` Anthony Liguori
2010-08-03 16:39                   ` Anthony Liguori
2010-08-03 16:43                   ` 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=20100804152552.GB10499@redhat.com \
    --to=gleb@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=avi@redhat.com \
    --cc=daahern@cisco.com \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rjones@redhat.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.