> -----Original Message-----
> From: systemd-devel [mailto:systemd-devel-
> boun...@lists.freedesktop.org] On Behalf Of cee1
> Sent: Wednesday, May 13, 2015 11:52 AM
> To: systemd Mailing List
> Subject: [systemd-devel] Reduce unit-loading time
> Hi all,
> We're trying systemd to boot up an ARM board, and find systemd uses
> more than one second to load units.

This sounds far a bit too long to me. Our systemd comes up in an arm based 
system in about 200-300ms from executing init up to the first unit being 

> Comparing with the init of Android on the same board, it manages to
> boot the system very fast.
> We guess following factors are involved:
> 1. systemd has a much bigger footprint than the init of Android: the
> latter is static linked, and is about 1xxKB (systemd is about 1.4MB,
> and is linked with libc/libcap/libpthread, etc)
> 2. systemd spends quiet a while to read/parse unit files.

This depends on the numbers of units involved in the startup (finally connected 
in the dependency tree that ends in the default.target root). In our case, a 
comparable large unit set takes by about 40-60ms, not so long, I'd say.

> Any idea to reduce the unit-loading time?
> e.g. one-single file contains all units descriptions, or a "compiled
> version"(containing resolved dependencies, or even the boot up
> sequence)

Could you provide me some additional information about your system setup?

- Version of systemd
- Are you starting something in parallel to systemd which might take 
significant IO?
- Version of the kernel
- The kernel ticker frequency
- The enabled cgroups controllers

The last three points might sound a bit far away, but I've an idea in mind ...

Best regards

Marko Hoyer
Software Group II (ADITG/SW2)

Tel. +49 5121 49 6948

systemd-devel mailing list

Reply via email to