• Café
  • Bootzeiten und -Tuning Thread

ach, mist, vergessen anzumelden^^"
geht um mein notebook, mit einigen wechselnden wlans, sprich nix für was statisches^^ 😃

Gruß,
Marcel
muss es network-manager sein?

Bei mir läuft netctl. netctl-auto auf's WLAN hält den Boot überhaupt nicht auf, weil netctl-auto nicht zwingend vor'm Login fertig sein will. Dafür hast du dann halt in der ersten Sekunde vielleicht kein WLAN, bis netctl mit dem Router fertig gesprochen hat, aber bis du anfängst, Programme zu starten, die Netzwerk brauchen, dürfte das auch gegessen sein (so ist's bei mir).
@Ovion

theoretisch nicht unbedingt, sollte halt schon vernünftig mit der gnome-shell zusammen arbeiten, sprich über die gnome-shell steuerbar sein, geht das denn mit nem anderen tool?

Gruß,
Marcel
Keine Ahnung, nutze keine Gnome-Shell.
hobbypunk schrieb@Ovion

theoretisch nicht unbedingt, sollte halt schon vernünftig mit der gnome-shell zusammen arbeiten, sprich über die gnome-shell steuerbar sein, geht das denn mit nem anderen tool?

Gruß,
Marcel
Eher schlecht. Zumindest nicht schoen integriert, wie es der networkmanager tut.
2 Monate später
Dirk schriebDabei frage ich mich immer, was mehr Zeit kostet: Eine komprimierte Datei laden und Entpacken, oder eine unkomprimierte Datei (COMPRESSION="cat") laden, die zwar größer ist, aber nicht erst noch entpackt werden muss.
meine ewige feindin, die bootzeit^^
bei meinem laptop schauts so aus... gut möglich, daß es bei einem anderen cpu anders ausschaut was das komprimieren betrifft.
...is im übrigen kein arch, sondern (m)ein chakra 🙂
lscpu
Intel(R) Core(TM) i3-3217U CPU @ 1.80GHz
samsung SSD 840 Pro
COMPRESSOR="gzip"
Startup finished in 1.520s (kernel) + 612ms (userspace) = 2.133s
COMPRESSOR="lz4"
Startup finished in 1.505s (kernel) + 640ms (userspace) = 2.145s
COMPRESSOR="cat"                  
Startup finished in 1.518s (kernel) + 598ms (userspace) = 2.117s
           666ms psd.service
           140ms psd-resync.service
           103ms systemd-logind.service
           102ms systemd-vconsole-setup.service
           101ms systemd-fsck-root.service
            99ms upower.service
            84ms cpupower.service
            84ms polkit.service
            83ms alsa-restore.service
            57ms NetworkManager.service
            55ms sys-kernel-debug.mount
            53ms dev-mqueue.mount
            49ms systemd-tmpfiles-setup-dev.service
            35ms systemd-modules-load.service
            33ms udisks2.service
            28ms kmod-static-nodes.service
            22ms systemd-rfkill@rfkill1.service
            21ms systemd-rfkill@rfkill0.service
            20ms systemd-random-seed.service
            20ms systemd-udev-trigger.service
            17ms dev-hugepages.mount
            15ms user@1000.service
            15ms systemd-journal-flush.service
            12ms rtkit-daemon.service
            12ms systemd-tmpfiles-setup.service
            11ms sys-kernel-config.mount
             9ms systemd-user-sessions.service
             7ms systemd-sysctl.service
             7ms wpa_supplicant.service
             5ms systemd-backlight@backlight:acpi_video0.service
             5ms systemd-update-utmp.service
             4ms systemd-backlight@backlight:intel_backlight.service
             4ms dev-sda2.swap
             4ms systemd-remount-fs.service
             3ms systemd-udevd.service
             2ms var-log.mount
             2ms tmp.mount
The time after the unit is active or started is printed after the "@" character.
The time the unit takes to start is printed after the "+" character.

graphical.target @524ms
└─multi-user.target @524ms
  └─getty.target @522ms
    └─getty@tty1.service @522ms
      └─[1;31msystemd-user-sessions.service @487ms +9ms[0m
        └─basic.target @408ms
          └─timers.target @405ms
            └─systemd-tmpfiles-clean.timer @405ms
              └─sysinit.target @404ms
                └─[1;31msystemd-rfkill@rfkill1.service @518ms +22ms[0m
                  └─system-systemd\x2drfkill.slice @515ms
                    └─system.slice @75ms
                      └─-.slice @74ms
ob noch ein größerer zeitgewinn drin wäre, wenn ich die hooks in der mkinitcpio.conf reduzieren würde?
im moment schauts nämlich so aus
HOOKS="base udev keymap autodetect modconf block keyboard resume filesystems fsck"
  • [gelöscht]

0.03 Sekunden fällt definitiv unter Messungenauigkeit. 😃
Cresh all schrieb0.03 Sekunden fällt definitiv unter Messungenauigkeit. 😃
tja, ein paar clockticks mehr oder weniger...^^
brikler schrieb ob noch ein größerer zeitgewinn drin wäre, wenn ich die hooks in der mkinitcpio.conf reduzieren würde?
im moment schauts nämlich so aus
HOOKS="base udev keymap autodetect modconf block keyboard resume filesystems fsck"
jugend forscht, so schauts bei mir aus:
hooks="base udev resume filesystem" keine module                
COMPRESSOR="cat"                         
Startup finished in 1.356s (kernel) + 418ms (userspace) = 1.774s
COMPRESSOR="gzip"
Startup finished in 1.328s (kernel) + 374ms (userspace) = 1.702s
COMPRESSOR="lz4"                 
Startup finished in 1.364s (kernel) + 377ms (userspace) = 1.741s
Also doch nur eher im psychologischen Bereich 🙂
ich hab mich noch ein bissl gespielt 🙂
mkinitcpio.conf, keine module
HOOKS="base udev autodetect resume filesystems fsck"
Startup finished in 1.322s (kernel) + 235ms (userspace) = 1.557s
und mit trick 17b:
Startup finished in 1.317s (kernel) + 219ms (userspace) = 1.536s
da ginge noch mehr, wen nicht dieses wär
graphical.target @228ms
└─upower.service @188ms +39ms
  └─basic.target @154ms
    └─timers.target @153ms
      └─systemd-tmpfiles-clean.timer @153ms
        └─sysinit.target @153ms
          └─systemd-update-utmp.service @148ms +4ms
            └─systemd-tmpfiles-setup.service @131ms +5ms
              └─local-fs.target @130ms
                └─local-fs-pre.target @129ms
                  └─systemd-tmpfiles-setup-dev.service @75ms +31ms
                    └─kmod-static-nodes.service @66ms +8ms
                      └─system.slice @61ms
                        └─-.slice @60ms
systemd kommt aus dem tritt wenn man keinen swap in der fstab hat.
ich starte den swap über die /usr/share/config/kdm/Xsetup, ich brauch ihn nämlich zu 99% blos für den tiefschlaf.
ohne den fsck haken wärs noch mal schneller.
brikler schriebsystemd kommt aus dem tritt wenn man keinen swap in der fstab hat.
Dann lass swap doch einfach ganz normal über die fstab aktiviert, tut ja nicht weh.
Dirk schrieb
brikler schriebsystemd kommt aus dem tritt wenn man keinen swap in der fstab hat.
Dann lass swap doch einfach ganz normal über die fstab aktiviert, tut ja nicht weh.
tat ich schon...wahrscheinlich probier ichs mit upower^^
ein neuer versuch, dieses mal mit dem super tollen bfq scheduler...
Startup finished in 1.268s (kernel) + 1.688s (userspace) = 2.956s
ein Jahr später
  • [gelöscht]

Zwar schon ein etwas ältere Thread, aber was solls......

systemd-analyze
Startup finished in 886ms (kernel) + 374ms (userspace) = 1.260s

systemd-analyze blame
           130ms dev-sda2.device
           100ms NetworkManager.service
            98ms alsa-restore.service
            74ms systemd-logind.service
            65ms systemd-user-sessions.service
            35ms systemd-vconsole-setup.service
            32ms udisks2.service
            25ms polkit.service
            24ms systemd-timesyncd.service
            21ms systemd-fsck@dev-sdb1.service
            19ms colord.service
            19ms systemd-journald.service
            17ms systemd-udev-trigger.service
            17ms systemd-fsck@dev-sda3.service
            16ms user@1000.service
            13ms wpa_supplicant.service
            12ms systemd-udevd.service
            12ms home.mount
            11ms systemd-sysctl.service
            10ms kmod-static-nodes.service
            10ms daten.mount
             9ms dev-hugepages.mount
             9ms dev-mqueue.mount
             9ms dev-sdb2.swap
             7ms sys-kernel-config.mount
             7ms systemd-tmpfiles-setup-dev.service
             5ms systemd-tmpfiles-clean.service
             5ms systemd-journal-flush.service
             4ms sys-kernel-debug.mount
             4ms systemd-remount-fs.service
             4ms systemd-tmpfiles-setup.service
             3ms systemd-update-utmp.service
             3ms sys-fs-fuse-connections.mount
             3ms systemd-random-seed.service
             1ms systemd-rfkill@rfkill0.service
             1ms tmp.mount
Slim + Openbox + i5 CPU + Samsung 850Pro SSD
ein Jahr später
 Startup finished in 4.325s (firmware) + 1.231s (loader) + 1.508s (kernel) + 497ms (userspace) = 6.562s
    graphical.target @497ms
└─upower.service @411ms +85ms
  └─basic.target @360ms
    └─sockets.target @360ms
      └─dbus.socket @360ms
        └─sysinit.target @360ms
          └─systemd-timesyncd.service @320ms +39ms
            └─systemd-tmpfiles-setup.service @310ms +5ms
              └─local-fs.target @310ms
                └─boot.mount @294ms +14ms
upower.service hält den ganzen betrieb auf....kann man da was machen?
'getty@.service' arbeitet als default mit 'Type=idle' - vermutlich für einen 'sauberen' Eingabeprompt auf tty1 nach all den anderen Meldungen. Brauche ich nicht, hab's deshalb auf 'Type=simple' geändert, das bringt in meinen Fällen eine weitere durchaus bemerkenswerte Zeitersparnis von mehreren 100ms (je nach Rechner).
@LessWire
console-getty.service                       disabled 
container-getty@.service                    static   
getty@.service                              disabled 
serial-getty@.service                       disabled 
getty.target 
ich komm ganz gut ohne getty@.service aus 🙂
@brikler:
Klar, disable, was man nicht braucht.

Wahrscheinlich sind mittlerweile unsere systemd configs so unterschiedlich, daß man kaum noch pauschale Tipps geben kann.

Ich nutze "graphical target" nicht und starte lieber über tty1 direkt in w3-wm - die Oberfläche steht dann mit einigen Programmen bereits zum Arbeiten bereit, obwohl Wlan und einige andere Dienste im Hintergrund noch hochgefahren werden. Gerade WLAN (wpa_supplicant) ist eine ziemliche Bremse. Sofort das Netz benötigende Services müssen dann natürlich auch etwas angepasst werden - aber mir gefällt's so gut. Wie gesagt, sehr individuell das Ganze und nicht jedermanns Sache - aber freaks, wie wir halt mal sind... ... 🙂
LessWire schrieb@brikler:
Klar, disable, was man nicht braucht.

Wahrscheinlich sind mittlerweile unsere systemd configs so unterschiedlich, daß man kaum noch pauschale Tipps geben kann.
pauschaler tipp: ausschalten was geht...das spart zeit, aber nicht ausführungszeit...
Improve a couple of algorithms in the unit dependency graph calculation logic, as well as unit file loading. For example, right now when loading units we match them up with a subset of the other loaded units in order to add automatic dependencies between them where appropriate. Usually the set of units matched up is small, but the complexity is currently O(n^2), and this could be optimized. Since unit file loading and calculations in the dependency graphs is the only major, synchronous, computation-intensive bit of PID 1, and is executed before any services are started this should bring relevant improvements, especially on systems with big dependency graphs.
https://freedesktop.org/wiki/Software/systemd/Optimizations/

im übrigen kostet mich der getty@service kaum zeit, ich hab die NAutoVTs=2 .... aber mal sehen, vielleicht findet sich noch was 😃