Hi Chris,

I think another area to look at is going to be DVFS and thermal throttling. A lot of systems out there today have /very/ poor thermal management and will (under load) start doing nasty things to avoid melting. The user experience is *awful* when this happens. More proactive handling using e.g. CPPC platform extensions for collaboration between the platform and the OS would allow the OS to know ahead of time that a thermal event is coming and reduce the load proactively. Nobody really does this today (although I'm certain Apple does in their own silicon because it's an obvious innovation), but there are a few projects headed there in Linux.

Jon.

On Mon, Dec 21, 2020 at 3:03 AM Chris Murphy <lists@colorremedies.com> wrote:
Hi,

GNOME and KDE developers are working on resource control to help
improve interactivity and system responsiveness when under pressure.
This is done by isolating three resources: cpu, memory, and io, and
setting either limits, or more typical is to set minimum resources on
the high priority processes.

Resource control demo, this is a bit more desktop oriented
https://github.com/facebookexperimental/resctl-demo

Resource Control (2019) Dan Schatzberg, this is a bit more server oriented
https://www.youtube.com/watch?v=30i7SamZxRU

Also related to this effort is having a user space oom killer. The
kernel's built-in oomkiller is primarily concerned about keeping the
kernel itself safely running. It's not concerned about user space
responding predictably or optimally.

Much of the above work is predicated on oomd2 There's been significant
work lately integrating portions of it into systemd as systemd-oomd.
The idea is to intelligently determine what processes are taking up
way more resources than is reasonable (i.e. they're likely
misbehaving) and kill them off so that other processes survive and the
system doesn't completely faceplant, which would require either human
intervention or worse case, force reboot.

What things are high priority for a server or cloud use cases, aren't
the same as for desktops. So while all the concepts are the same, I
expect Server WG folks will want to take a look at optimizing for
typical server workloads.

--
Chris Murphy
_______________________________________________
server mailing list -- server@lists.fedoraproject.org
To unsubscribe send an email to server-leave@lists.fedoraproject.org
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/server@lists.fedoraproject.org