Auto Nice Daemon ist uralt und das manuelle Ändern Ihrer Softwareprioritäten ist ärgerlich. Gibt es nicht eine moderne Möglichkeit zu steuern, wie viele Ressourcen jedes Programm verwenden soll? Treffen Ananicy (ANother Auto NICe Daemon), eine moderne Auto-Nice-Lösung, mit der Sie Profile für Ihre Software erstellen können, um die Apps zu priorisieren, die Ihnen wichtig sind. Mal sehen, wie Sie das machen können.
Installation
Ananicy benötigt systemd, um zu funktionieren, daher ist es nicht mit jeder Distribution unter der Sonne kompatibel. Verwenden Sie Folgendes, um es auf Ubuntu, Mint, Debian und kompatiblen Distributionen zu installieren:
git clone https://github.com/Nefelim4ag/Ananicy.git ./Ananicy/package.sh debian sudo dpkg -i ./Ananicy/ananicy-*.deb
Wenn Sie Arch, Manjaro oder eine andere ähnliche Distribution verwenden, können Sie diese installieren mit:
git clone https://github.com/Nefelim4ag/Ananicy.git /tmp/ananicy cd /tmp/ananicy sudo make install
Ananicy verlässt sich auch auf schedtool
Wenn es noch nicht installiert ist, fügen Sie dies ebenfalls hinzu. Sie können dies auf Debian-kompatiblen bzw. Arch-kompatiblen Distributionen tun mit:
# Debian/Ubuntu sudo apt install schedtool # Arch Linux sudo pacman -S schedtool
Wenn alles eingerichtet ist, aktivieren Sie den Daemon, damit er immer aktiv ist und Ihre Anwendungen überwacht:
sudo systemctl enable ananicy

Verwenden Sie zum Starten der eigentlichen Anwendung:
sudo systemctl start ananicy
Wenn Sie sich auf einem System mit geringem Stromverbrauch befinden, auf dem jede Software um Ressourcen kämpft, kann es sein, dass sie sich sofort etwas reaktionsfähiger anfühlt.
Überprüfen Sie die Voreinstellungen
Ananicy enthält eine Reihe von Regeln für viele beliebte Anwendungen. Starten Sie zum Auschecken Ihr Lieblingsterminal und besuchen Sie das Regelverzeichnis von Ananicy:
cd /etc/ananicy.d/00-default/

Die Regeln für jede Anwendung werden in separaten Dateien gespeichert. Um beispielsweise die voreingestellten Regeln für den beliebten qBittorrent-Filesharing-Client zu überprüfen, können Sie Folgendes verwenden:
sudo nano qBittorrent.rules
Sie können diese als Grundlage für Ihre eigenen Regeln verwenden.
Fügen Sie Ihre eigenen Regeln hinzu
Um Regeln für eine Anwendung zu erstellen, sollten Sie deren Prozessnamen kennen. Glücklicherweise entspricht dies unter Linux normalerweise dem Namen der Anwendung. Du kannst den … benutzen top
Befehl zum Überprüfen des Prozessnamens.
Suchen Sie einen Prozess, der Ihren Computer überlastet, und notieren Sie seinen Namen. Verwenden wir als Beispiel die Timeshift-App.
Erstellen Sie eine neue Textdatei im Regelverzeichnis von Ananicy. Es ist besser, wenn Sie den Namen der Anwendung verwenden, um später leichter darauf zurückgreifen zu können. Stellen Sie sicher, dass Ihre Datei mit “.rules” endet, damit Ananicy sie als Regeldatei erkennt.
sudo nano timeshift.rules

Der einfachste Weg, eine Regel für eine Software zu erstellen, besteht darin, nur ihren Namen anzugeben und ihren Typ zu klassifizieren. Ananicy enthält vordefinierte Typen für Spiele, Multimedia-Apps, Dokumenteditoren usw. Verwenden Sie den folgenden Befehl, um sie auszuchecken:
ananicy dump types

Jeder dieser Werte enthält unterschiedliche Werte für nice, ionice, cgroup und andere. Es wird jedoch empfohlen, nicht weiter zu gehen, als den netten Wert einer Anwendung zu optimieren. Für Anwendungen, die viel in Ihrem Speicher lesen und schreiben, lohnt es sich jedoch auch, ihre Eingabe-Ausgabe-Priorität mithilfe des ioclass-Parameters zu definieren.
Vor diesem Hintergrund sind wir bereit, unsere eigene Regel zu erstellen:
{ "name": "timeshift", "type": "BG_CPUIO", "nice": 17, "ioclass": "idle" }

Die obige Regel:
- Gibt den Namen der Anwendung an
- Definiert seinen Typ
- Weist ihm eine andere nette Priorität zu als den Voreinstellungen
- Legt die Eingangs- / Ausgangspriorität auf Leerlauf fest
Theoretisch müssen Sie nur den Namen einer Anwendung angeben, und alles andere ist optional. Wenn Sie nur das tun, erkennt Ananicy praktisch nur die Existenz der App an, versucht jedoch nicht, sie zu kontrollieren. Dazu müssen Sie mindestens den Typ definieren.
Sein Typ enthält verschiedene vordefinierte nette und Eingabe- / Ausgabewerte, und Sie werden wahrscheinlich einen finden, der der Art und Weise entspricht, wie Sie eine Software einschränken möchten. Manchmal, wie in unserem Fall mit Timeshift, möchten Sie sie möglicherweise weiter optimieren. In diesem Fall müssen Sie den gewünschten Wert für nice oder ioclass explizit angeben, wenn er sich von dem Wert unterscheidet, der in der Typvoreinstellung von Ananicy enthalten ist.
Das BG_CPUIO
Die von uns ausgewählte Voreinstellung entspricht dem Typ unserer Anwendung, da sie als Sicherungslösung normalerweise im Hintergrund ausgeführt wird, jedoch viele Verarbeitungszyklen in Anspruch nehmen kann, während kontinuierliche Lese- und Schreibvorgänge ausgeführt werden. Das BG_CPUIO-Preset würde ihm jedoch die niedrigstmöglichen Nice- und Ionice-Werte zuweisen, was dazu führen könnte, dass ein Backup-Prozess ewig dauert. Aus diesem Grund haben wir den netten Wert auf 17 und die ioclass auf Best-Effort erhöht, um den Prozess etwas zu beschleunigen.
Schauen wir uns ein anderes Beispiel an. Batman: Arkham Citys “Joker’s Carnival” DLC ist eines meiner Lieblingsspiele. Seine Aktion hängt jedoch von fließenden Bewegungen ab, und ich konnte fühlen, wie es in Linux Mint stotterte, wenn eine andere Software im Hintergrund ausgeführt wurde. Daher wollte ich für diesen Fall das Gegenteil tun – seine Priorität vor allem anderen erhöhen.

Wenn Sie den Systemmonitor von Linux Mint überprüfen, nachdem Sie das Spiel über Steam mit Proton ausgeführt haben, können Sie den Prozessnamen als “BatmanAC.exe” anzeigen. Um Ananicy einen schönen Schub zu geben, habe ich wie zuvor eine neue Regel namens “BatmanAC_ody.rules” erstellt. In diesem Fall war sein Inhalt jedoch:
{ "name": "BatmanAC.exe", "type": "Game"}

Das war genug, da der Typ “Spiel” einen guten Wert von “-5” hat und eine App Vorrang vor allem anderen hat. Sie müssen also den expliziten Wert nicht explizit selbst angeben oder kompliziertere Regeln erstellen.
Ein Neustart später ist Ananicy aktiv und bereit, aktiv zu werden, um die Prioritäten Ihrer Software zu optimieren. Der Wert, den Sie im folgenden Screenshot für den Prozess BatmanAC.exe sehen, wurde automatisch zugewiesen, ohne dass ein Benutzereingriff erforderlich war.

Beachten Sie, dass Sie dies nicht für Ihre gesamte Software tun müssen, aber wenn Sie die anspruchsvollsten Hintergrundprozesse in den Griff bekommen und die interaktiveren Prozesse verbessern, kann dies einen großen Unterschied darin machen, wie sich die Verwendung Ihres Computers anfühlt. Es kann das Stottern minimieren und rundum ein gleichmäßigeres Erlebnis bieten.
Verwenden Sie bereits Ananicy oder eine ähnliche Lösung, mit der Sie steuern können, wie die Ressourcen Ihres Computers Ihren Apps zugewiesen werden? Erneuern Sie Ihre Software manuell neu? Sagen Sie es uns in den Kommentaren unten.
Verbunden:
-
Bash-Tipps und Tricks, um im Terminal intelligenter zu arbeiten
-
Tmux vs. Screen: Welches ist der beste Terminal-Multiplexer?
-
Verwenden Sie nnn als Dateimanager für Linux Terminal