On Thu, Mar 04, 2021 at 07:50:11PM +0100, Hans de Goede wrote:
> > I am not sure about this. What services are you seeing which are
> > extraneous? I do see ps aux is going on miles and miles, but of the 218
> > processes I see from startup time on my workstation, I see 165 of them are
> > kernel processes versus user space ones. Of the remaining 53, most of them
> > seem hardware oriented (irqbalance, bluetooth, modemmanager, smartd,
> > udisksd, upowerd, etc). Looking at the rest we have about 20 processes
> > which seem outside of 'I don't want my laptop to work with modern hardware'
> > and that would be abrt, atd/crond/cupsd, packagekitd, colord, and the sssd
> > processes. So while ps auxww has a lot more going on in it, I actually see
> > a lot fewer extraneous processes than I remember from my Fedora 18 days.
>
> 20 processes is still a lot when e.g. booting from an eMMC or a sdcard those
> add a significant amount of time to the startupo time.
I agree, we really have too many things starting, to many things
running, and too many things generating errors.
Instead of 'ps aux', 'systemctl -t service --state running' is easier to
interpret:
UNIT LOAD ACTIVE SUB
DESCRIPTION
accounts-daemon.service loaded active running Accounts
Service
alsa-state.service loaded active running Manage
Sound Card State (restore and store)
^ do we really need this
avahi-daemon.service loaded active running Avahi
mDNS/DNS-SD Stack
bluetooth.service loaded active running Bluetooth
service
colord.service loaded active running Manage,
Install and Generate Color Profiles
cups.service loaded active running CUPS
Scheduler
^ this should be socket activated, I haven't printed *anything* on this
machine ever
dbus-:[email protected] loaded active running
dbus-:[email protected]
dbus-broker.service loaded active running D-Bus
System Message Bus
firewalld.service loaded active running firewalld
- dynamic firewall daemon
gdm.service loaded active running GNOME
Display Manager
geoclue.service loaded active running Location
Lookup Service
gpm.service loaded active running Console
Mouse manager
iio-sensor-proxy.service loaded active running IIO Sensor
Proxy service
libvirtd.service loaded active running
Virtualization daemon
low-memory-monitor.service loaded active running Low Memory
Monitor
^ this is interesting. gnome-shell.rpm requires lower-memory-monitor.rpm,
and the default preset is on.
Do we still want this with systemd-oomd being on by default?
mcelog.service loaded active running Machine
Check Exception Logging Daemon
ModemManager.service loaded active running Modem
Manager
NetworkManager.service loaded active running Network
Manager
pcscd.service loaded active running PC/SC
Smart Card Daemon
pmcd.service loaded active running
Performance Metrics Collector Daemon
pmie.service loaded active running
Performance Metrics Inference Engine
pmlogger.service loaded active running
Performance Metrics Archive Logger
polkit.service loaded active running
polkit.service
sssd-kcm.service loaded active running SSSD
Kerberos Cache Manager
sssd.service loaded active running System
Security Services Daemon
switcheroo-control.service loaded active running Switcheroo
Control Proxy service
systemd-homed.service loaded active running Home Area
Manager
^ hmm, I would think this would be go away on its own. Maybe something to
fix upstream.
systemd-journald.service loaded active running Journal
Service
systemd-logind.service loaded active running User Login
Management
systemd-machined.service loaded active running Virtual
Machine and Container Registration Service
systemd-networkd.service loaded active running Network
Service
systemd-resolved.service loaded active running Network
Name Resolution
systemd-timesyncd.service loaded active running Network
Time Synchronization
systemd-udevd.service loaded active running Rule-based
Manager for Device Events and Files
systemd-userdbd.service loaded active running User
Database Manager
udisks2.service loaded active running Disk
Manager
upower.service loaded active running Daemon for
power management
[email protected] loaded active running User
Manager for UID 1000
[email protected] loaded active running User
Manager for UID 6
wpa_supplicant.service loaded active running WPA
supplicant
Then there's 'systemctl --user -t service --state running' which is even longer
:(
E.g. at-spi-dbus-bus.service has it's own dbus-broker instance.
That's better than in the past, at least it's not a different implementation
of dbus than the session bus ;) But we should consider if we can use the
session bus again. (In the past, dbus-daemon wasn't efficient enough, so a
separate bus was created. But dbus-broker is supposed to be more efficient.)
> Note I'm not trying to blame anyone here; and especially not the
> authors/maintainers of the mentioned packages
As one of those, I would say that the authors/maintainers of those
packages are the people best positioned to fix things. For example,
systemd-homed probably shouldn't be running, but this is something to
figure out upstream.
(BTW, one thing which has improved a lot in this list is the pcp
stack. It's still 3 services with ~10 processes altogether, but the
total memory usage is <50MB, and CPU usage which was excessive last
year is reasonable. The maintainers put in the work here.)
> but I do wish that we (the Fedora project) could make some time to
> go over this list and try to stop a whole bunch of programs /
> daemons from always starting when that is (IMHO) not really
> necessary. I would really like to see Fedora to become somewhat more
> lean / go on a diet here, which is something which I think would
> benefit everyone.
Yes.
> Given that I can halve the base processes RAM set with some hacks I
> think that it is fair to say that there are still way too much
> things starting by default. I have actually been considering doing
> a Fedora workstation light spin for budget x86 machines with 1G / 2G
> of RAM and an eMMC.
I think there's still plenty of stuff to improve that will apply everywhere.
homed, alsactl, geoclue, colord just shouldn't need to be there all the time.
Zbyszek
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam on the list, report it:
https://pagure.io/fedora-infrastructure