On Mo, 12.08.19 09:40, Chris Murphy (
lists(a)colorremedies.com)
wrote:
Ideally, GNOME would run all its apps as systemd --user services. We
could then set DefaultMemoryHigh= globally for the systemd --user
instance to some percentage value (which is taken relative to the
physical RAM size). This would then mean every user app individually
could use — let's say — 75% of the physical RAM size and when it wants
more it would be penalized during reclaim compared to apps using less.
If GNOME would run all apps as user services we could do various other
nice things too. For example, it could dynamically assign the fg app
more CPU/IO weight than the bg apps, if the system is starved of
both.
Running each app as systemd --user services is something we've been trying to
encourage teams to do at FB. It lets monitor things much better using the cgroup control
files.
In addition, it lets us configure oomd (
https://github.com/facebookincubator/oomd ) to do
much more intelligent things than kill the entire session. oomd is being proposed as a
fedora package right now. I think the last missing piece for oomd to be really useful on
desktop systems is the --user slice changes.