From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43507) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1am40m-0007iv-Kh for qemu-devel@nongnu.org; Fri, 01 Apr 2016 14:41:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1am40j-0007qD-EO for qemu-devel@nongnu.org; Fri, 01 Apr 2016 14:41:36 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47736) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1am40j-0007pl-9r for qemu-devel@nongnu.org; Fri, 01 Apr 2016 14:41:33 -0400 Date: Fri, 1 Apr 2016 19:41:31 +0100 From: "Richard W.M. Jones" Message-ID: <20160401184131.GP32728@redhat.com> References: <20160401081417.GD32728@redhat.com> <56FE3045.2030003@redhat.com> <20160401084456.GF32728@redhat.com> <1459502310.7011.37.camel@redhat.com> <20160401101733.GI32728@redhat.com> <1459508875.7011.62.camel@redhat.com> <20160401111139.GK32728@redhat.com> <1459510371.7011.63.camel@redhat.com> <20160401114947.GM32728@redhat.com> <20160401153540.GD25490@morn.lan> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <20160401153540.GD25490@morn.lan> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] Why is SeaBIOS used with -kernel? List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin O'Connor Cc: marc.mari.barcelo@gmail.com, Paolo Bonzini , qemu-devel@nongnu.org, Gerd Hoffmann , Stefan Hajnoczi On Fri, Apr 01, 2016 at 11:35:40AM -0400, Kevin O'Connor wrote: > > +# general stuff > > +CONFIG_QEMU=3Dy > > +CONFIG_ROM_SIZE=3D128 >=20 > Why force a size of 128K - I would think 64K would be fine. Agreed. Setting this to =3D0 seems the best thing, and it does fit fine inside 64K. > > +# no input, no boot menu > > +CONFIG_MOUSE=3Dn > > +CONFIG_KEYBOARD=3Dn > [...] > > +CONFIG_DRIVES=3Dn >=20 > I would not recommended disabling CONFIG_MOUSE, CONFIG_KEYBOARD, > CONFIG_DRIVES - I only had those in my config so as to avoid having to > specify all the device drivers. Ideally these would remain on and the > individual device drivers would be disabled. We are always use this in a virtual appliance. Interaction with the user is both impossible and undesirable. It either boots or not, and the whole appliance is discarded in seconds. We're always using -kernel with this SeaBIOS build, so probing drives is never needed. 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 =B1 number is 1 standard deviation from the mean. In my estimation only CONFIG_FW_ROMFILE_LOAD=3Dn seems to make a measurable difference. ---------------------------------------------------------------------- Ordinary qemu SeaBIOS configuration Result: 1227.5ms =B17.7ms -bios boot-fast.bin, as per my previous patch Result: 1113.7ms =B16.4ms Leaving CONFIG_XEN and CONFIG_THREADS at default settings Result: 1111.2ms =B13.8ms CONFIG_USE_SMM=3Dn Result: 1116.0ms =B15.0ms CONFIG_FW_ROMFILE_LOAD=3Dn Result: 1106.6ms =B15.0ms CONFIG_RELOCATE_INIT=3Dn Result: 1104.7ms =B111.2ms ---------------------------------------------------------------------- Rich. --=20 Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rj= ones Read my programming and virtualization blog: http://rwmj.wordpress.com libguestfs lets you edit virtual machines. Supports shell scripting, bindings from many languages. http://libguestfs.org