All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Richard W.M. Jones" <rjones@redhat.com>
To: Kevin O'Connor <kevin@koconnor.net>
Cc: marc.mari.barcelo@gmail.com, Paolo Bonzini <pbonzini@redhat.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@gmail.com>
Subject: Re: [Qemu-devel] Why is SeaBIOS used with -kernel?
Date: Fri, 1 Apr 2016 20:10:48 +0100	[thread overview]
Message-ID: <20160401191048.GF19398@redhat.com> (raw)
In-Reply-To: <20160401190415.GA13599@morn.lan>

On Fri, Apr 01, 2016 at 03:04:15PM -0400, Kevin O'Connor wrote:
> On Fri, Apr 01, 2016 at 07:59:02PM +0100, Richard W.M. Jones wrote:
> > On Fri, Apr 01, 2016 at 07:41:31PM +0100, Richard W.M. Jones wrote:
> > > Below are some benchmarks of the other things you mentioned.  These
> > > are complete appliance boot-to-shutdown times [*not* just SeaBIOS].
> > > All debugging has been disabled, and I'm using a slightly different
> > > kernel version, so these runs are not comparable to earlier results I
> > > posted.  All times are the mean of 10 runs.  The ± number is 1
> > > standard deviation from the mean.
> > > 
> > > In my estimation only CONFIG_FW_ROMFILE_LOAD=n seems to make a
> > > measurable difference.
> > > 
> > > ----------------------------------------------------------------------
> > > Ordinary qemu SeaBIOS configuration
> > > Result: 1227.5ms ±7.7ms
> > > 
> > > -bios boot-fast.bin, as per my previous patch
> > > Result: 1113.7ms ±6.4ms
> > > 
> > > Leaving CONFIG_XEN and CONFIG_THREADS at default settings
> > > Result: 1111.2ms ±3.8ms
> > > 
> > > CONFIG_USE_SMM=n
> > > Result: 1116.0ms ±5.0ms
> > > 
> > > CONFIG_FW_ROMFILE_LOAD=n
> > > Result: 1106.6ms ±5.0ms
> > > 
> > > CONFIG_RELOCATE_INIT=n
> > > Result: 1104.7ms ±11.2ms
> > > ----------------------------------------------------------------------
> > 
> > Actually, CONFIG_RELOCATE_INIT=n looks like it is doing something, but
> > the error bars are quite large.
> > 
> > Here's another one that makes a difference:
> > 
> > CONFIG_BOOTORDER=n
> > Result: 1099.5ms ±3.7ms
> 
> Are you sure you had CONFIG_DEBUG_LEVEL=0?

Yes, I'm pretty sure.  I'm using qemu with -bios bios-fast.bin, and
recompiling SeaBIOS under qemu each time (make && make -C roms bios).

The test program is:
https://github.com/libguestfs/libguestfs/commit/96ce2f9afedc6a7ecb2f7781958c3940255f453b

> Otherwise, it doesn't make
> sense that disabling CONFIG_BOOTORDER=n would change the boot time.

Could it be explained by it avoiding slow access to qemu fw_cfg?

> Disabling CONFIG_DEBUG_SERIAL is not enough, because SeaBIOS also
> writes to port 0x402 as an internal debugging mechanism.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v

  reply	other threads:[~2016-04-01 19:10 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-19 20:31 [Qemu-devel] Why is SeaBIOS used with -kernel? Richard W.M. Jones
2016-03-21  7:58 ` Gerd Hoffmann
2016-03-21  8:37   ` Richard W.M. Jones
2016-03-21  9:40     ` Gerd Hoffmann
2016-03-31  9:21 ` Stefan Hajnoczi
2016-03-31 16:22   ` Kevin O'Connor
     [not found]     ` <20160331221039.GA32728@redhat.com>
2016-03-31 22:17       ` Richard W.M. Jones
2016-03-31 22:44         ` Kevin O'Connor
2016-04-01  7:55           ` Richard W.M. Jones
2016-04-01  8:03             ` Paolo Bonzini
2016-04-01  8:47               ` Richard W.M. Jones
2016-04-01  8:51                 ` Paolo Bonzini
2016-04-01  8:57                   ` Richard W.M. Jones
2016-04-01  9:05                     ` Paolo Bonzini
2016-04-01  8:02           ` Richard W.M. Jones
2016-04-01  8:11             ` Paolo Bonzini
2016-04-01  8:14               ` Richard W.M. Jones
2016-04-01  8:24                 ` Paolo Bonzini
2016-04-01  8:44                   ` Richard W.M. Jones
2016-04-01  8:47                     ` Paolo Bonzini
2016-04-01  8:49                       ` Vasiliy Tolstov
2016-04-01  9:16                     ` Dr. David Alan Gilbert
2016-04-01  9:18                     ` Gerd Hoffmann
2016-04-01 10:17                       ` Richard W.M. Jones
2016-04-01 11:07                         ` Gerd Hoffmann
2016-04-01 11:11                           ` Richard W.M. Jones
2016-04-01 11:20                             ` Richard W.M. Jones
2016-04-01 11:21                               ` Paolo Bonzini
2016-04-01 11:26                                 ` Richard W.M. Jones
2016-04-05  4:38                               ` Kevin Wolf
2016-04-05  8:04                                 ` Richard W.M. Jones
2016-04-05  8:11                                   ` Kevin Wolf
2016-04-05  9:19                                     ` Richard W.M. Jones
2016-04-05  9:26                                       ` Kevin Wolf
2016-04-01 11:32                             ` Gerd Hoffmann
2016-04-01 11:49                               ` Richard W.M. Jones
2016-04-01 15:35                                 ` Kevin O'Connor
2016-04-01 16:03                                   ` Paolo Bonzini
2016-04-01 18:41                                   ` Richard W.M. Jones
2016-04-01 18:59                                     ` Richard W.M. Jones
2016-04-01 19:04                                       ` Kevin O'Connor
2016-04-01 19:10                                         ` Richard W.M. Jones [this message]
2016-04-01 19:15                                           ` Richard W.M. Jones
2016-04-01 19:44                                             ` Kevin O'Connor
2016-04-01 20:25                                               ` Richard W.M. Jones
2016-04-01 20:05                                     ` Kevin O'Connor
2016-04-01 20:46                                       ` Richard W.M. Jones
2016-04-01 22:25                                         ` Kevin O'Connor
2016-04-02  7:51                                           ` Richard W.M. Jones
2016-04-02  5:30                                       ` Paolo Bonzini
2016-04-01 15:08                           ` Kevin O'Connor
2016-04-01 14:58                     ` Kevin O'Connor
2016-04-01 15:06                       ` Richard W.M. Jones
2016-04-01 15:14                         ` Kevin O'Connor
2016-04-01  8:19               ` 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=20160401191048.GF19398@redhat.com \
    --to=rjones@redhat.com \
    --cc=kevin@koconnor.net \
    --cc=kraxel@redhat.com \
    --cc=marc.mari.barcelo@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@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 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.