LWN.net Logo

Startup time

Startup time

Posted Apr 25, 2012 7:43 UTC (Wed) by Felix.Braun (subscriber, #3032)
Parent article: Shuttleworth: Quality has a new name

I don't mean to add more oil into an already busy flame fest. It's just that I am surprised nobody seems to share my experience.

I have tried Fedora because I actually liked systemd's design principles. However, I was never able to make fedora boot as fast as my Ubuntu systems. I admit that I haven't tried digging very much deeper than disabling a couple of targets that I don't need on my system. But, on the other hand, no such tweaking was necessary with Ubuntu.

If my experience was representative at all, preserving faster startup times seems to be enough reason to hold on to upstart.

There is a lot of heated debate in this thread about backwards compatibility, UNIX philosophy, hackability and whatnot. But at least on my setup booting Ubunutu (12.04) is about 20s faster than booting Fedora (16). For me that is reason enough to prefer Ubuntu.

How do upstart and systemd compare performace-wise in your setups?


(Log in to post comments)

Startup time

Posted Apr 25, 2012 8:43 UTC (Wed) by luya (subscriber, #50741) [Link]

Fedora 16 still has some legacy from sysVinit hence slow boot. It would be hardly surprise Ubuntu upstart is heavily optimized than the generic systemd. Some Fedora users were able to obtain faster bootup with systemd on this topic:
http://forums.fedoraforum.org/showthread.php?t=276520

Startup time

Posted Apr 25, 2012 8:51 UTC (Wed) by ovitters (subscriber, #27950) [Link]

That wasn't given as a reason in the announcement. If you follow Google Plus (Lennart; has comments from Scott) you can see that there are various technical reasons (speed, a few others) for the decision... but that is not the impression which I got from this announcement.

Boot speed is a very valid reason. Also, seems that there is some confusion if a initrd is needed or not (affects booting speed for chrome os).

It is good to know the technical reasons as hopefully then those reasons can be worked upon / fixed / wontfixed in systemd.

Up to seeing the technical comments the impression was that it was a bit arbitrary: don't focus on kernel, but focus on the init system (both are to me important, but uninteresting low level stuff... it should just work :P).

Startup time

Posted Apr 26, 2012 21:50 UTC (Thu) by jspaleta (subscriber, #50639) [Link]

There's no evidence that systemd is incapable of handling the ChromeOS situation that Scott refers to. Scott is being overly vague about the ChromeOS filesystem layout in his comments as it pertains to the necessity of using an initrd. ChromeOS uses a novel and very unique arrangement for its file system and partitioning which is not a one-to-one mapping base filesytem elements. So whatever the common understanding is with regard to filesystem and partitioning for the typical distribution situations...does not automatically apply to what Scott is talking about obtusely. And Scott hasn't really put enough details into the public discussion to make it clear what ChromeOS is doing exactly.

Let's be clear.... whether or not you need an initrd comes down to your filesytem layout and where you store executables and libraries and configs needed during the early boot process. If you can construct your layout in such a way that everything systemd needs to mount the rest of the system exists in the root partition you can most likely avoid an initrd and thus avoid the boot up cost associated with an initrd.


And there's no benchmarking numbers anywhere that I can find to suggest that current systemd release can't be used to achieve ChromeOS's boot up speed. All we know is Google's ChromeOS team is happy with upstart. And that's fine. If they like it, they can use it. But noone from that group have published any benchmarks or methodology which would indicate one is better than the other with regard to boot up speed. And without a repeatable methodology that's far short of knowing whether systemd is better or worse for the ChromeOS situation. And unfortunately... more impartial observers can't do the test themselves as what ChromeOS is actually doing hasn't been communicated with enough detail for any of us to reconstruct the situation and make independent tests. I'm very interesting in knowing the situation and test methodology where systemd performs badly. I'm not so interested in unsubstantiated rumors about situations.

If we want to talk about relative performance... then that discussion must be driven by agreed on testing methodology and the resulting data.

-jef

Startup time

Posted Apr 26, 2012 22:04 UTC (Thu) by ovitters (subscriber, #27950) [Link]

I meant more in view of the likely speed of upstart vs systemd in Ubuntu 12.10.

Background: Mageia 2 will use systemd, but because of still allowing to fall back to sysvinit, a full switch takes a while and it takes a while to really optimize things, the boot speed of "systemd" Mageia 2 might often be slower than sysvinit Mageia 1. In Mageia 3 systemd will probably outperform Mageia 2 and 1 easily.. but until that time systemd will often be seen as slow.

I saw that Ubuntu has often given loads of attention to boot speed. Though systemd might be capable of the same speed or better, achieving a full switch + same boot speed in just 6 months (12.10) + avoid bugs: I can understand the hesitance. In an email on ubuntu-devel it stated that upstart took 5 releases to get right.

Startup time

Posted Apr 26, 2012 22:17 UTC (Thu) by jspaleta (subscriber, #50639) [Link]

Be aware that Scott was specifically referring to ChromeOS not Ubuntu.
I'm pretty sure the issues Scott is worried about do not apply to Ubuntu. I'm pretty sure Ubuntu uses an initrd by default and pays whatever penalty there is for that.

I would absolutely LOVE to see a comparison of boot performance on Ubuntu for a fully native systemd init versus a fully native upstart init (no sysvinit scripts). I think that would be a very useful thing to have in hand prior to the UDS discussion about the future of upstart in Ubuntu. There is a reason why noone is actually claiming performance benefits from upstart on Ubuntu. Because the comparison simply has not been done. We do not know..even for a simple reference desktop boot. What if systemd is faster right now..even after Ubuntu put effort into optimizing services for upstart's approach?

Upstart doesn't have an equivalent concept to systemd's lazy socket initialization which allows for high parallization of services, and I'm very interested to see how the different approaches actually compare once you pull sysvinit scripts out entirely. I actually expect Debian to provide this analysis at some point, as that community is having a real debate about the decision. Ubuntu, being Canonical led, lives with the decision being handed down. The proponents for either in Debian are going to have to make the case with public discussion. Canonical... not so much.

-jef

Startup time

Posted Apr 25, 2012 11:55 UTC (Wed) by ebiederm (subscriber, #35028) [Link]

I haven't timed it any great detail but my fastest setup is debian with it's dependency based boot using make.

Debian seems to be light weight and simple and just work compared to the rest.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds