Hey TPG,
greate benchmark.
I think we could have a try on this patch. Not really sure if we can
apply it directly (probably yes, as this part of kernel
doesn't have so much modification), if not I can have a try porting it
to our kernel version.
Another try we can have, but this on can be more hard to handle, is use
finit:
https://github.com/troglobit/finit
A replacement to init default init tools (/sbin/init or systemd)
focused in be faster.
This one can be quite hard as we need to create the right hooks to
bring up the system on a usable way but could give us
a good performance.
Thanks all for the excellent work!
Em 04-06-2014 19:51, Tomasz Paweł Gajc escreveu:
Hi
i dediced to take a look at our kernel's boot time. It is very
impressive that
kernel boot time is very small.
First i've added these "initcall_debug printk.time=1" to
GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub and then run
update-grub2 and
reboot.
Then i've produced a kernel bootchart with dmesg | perl bootgraph.pl
>
kernel_boot.svg
According to this graph[1], kernel boots in about 3 seconds, but
spends 2
seconds on
populate_rootfs() which is responisble for unpacking intrd. Looks like
this
function is not invoked in asynchronous mode, which simply means that
kernel
waits for this function to finish, and after that calls others.
Some distributions adopted a patch [2] that calls populate_rootfs in
async
mode, which finally reduces kernel boot time. My wild guess is that we
can at
least save 1 second on kernel boot, by using this patch[2]. So what do
you
think about this ?
I'm attaching also output from my systemd-analyze[3] to comapre kernel
boot
time with systemd output [1].
[tpg@tpgbox ~]$ hostnamectl
Static hostname: tpgbox.localdomain
Icon name: computer-desktop
Chassis: desktop
Machine ID: 749bb30eb3383bf688882190532f013b
Boot ID: c084aee457f94000aecdbe705901fcaa
Operating System: OpenMandriva Lx 2014.0 (Phosphorus)
CPE OS Name:
cpe:/o:openmandriva_association:openmandriva_lx:2014.0
Kernel: Linux 3.13.11-nrjQL-desktop-1omv
Architecture: x86_64
References:
1. Attached kernel_boot.svg
2.
https://lists.ubuntu.com/archives/kernel-team/2009-December/008035.html
3. Attached system_boot.svg
--
Marco A Benatto
Mandriva OEM Team
Linux user ID: #506236