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? Otherwise, it doesn't make sense that disabling CONFIG_BOOTORDER=n would change the boot time. Disabling CONFIG_DEBUG_SERIAL is not enough, because SeaBIOS also writes to port 0x402 as an internal debugging mechanism. -Kevin