So konfigurieren Sie ZRAM unter Ubuntu Linux

So konfigurieren Sie ZRAM unter Ubuntu Linux

Während ZRAM eine fantastische Lösung ist, um etwas CPU-Leistung gegen mehr RAM einzutauschen, wie kann man es so konfigurieren, dass mehr oder weniger RAM für ZRAM reserviert wird? Wie können Sie den Komprimierungsalgorithmus ändern? In welchen Szenarien lohnen sich solche Veränderungen? Lesen Sie weiter, um herauszufinden, wie Sie ZRAM unter Ubuntu konfigurieren.

Überprüfen Sie Ihren aktuellen ZRAM-Status

Die meisten Leute verwenden ZRAM auf ihren Ubuntu- und Debian-basierten Linux-Distributionen über das zram-config-Skript. Das liegt daran, dass Sie ZRAM so unkompliziert wie möglich nutzen können. Sie können es mit dem Befehl installieren:

Überprüfen Sie als Nächstes, ob ZRAM auf Ihrem Ubuntu-Computer bereits aktiviert ist. Sie können dies tun, indem Sie das Dienstprogramm zramctl ausführen:

Stellen Sie sicher, dass Zswap derzeit für Ihr System deaktiviert ist:

Zswap ist eine alternative RAM-Cache-Lösung , die ähnlich wie ZRAM standardmäßig in jeder Linux-Distribution enthalten ist. Allerdings ist es im Gegensatz zu ZRAM auf physische Swap-Partitionen angewiesen, was bedeutet, dass es auf älteren Festplatten langsam sein kann.

Starten Sie Ihren Computer neu, um das erste ZRAM-Blockgerät in Ihrem Ubuntu-System zu erstellen.

Das richtige ZRAM-Setup kennen

Überprüfen Sie, während Ihr Computer wieder hochgefahren ist und läuft, ob er jetzt eine ZRAM-Partition meldet:

Ein Terminal, das die verfügbare Auslagerungsdatei und das ZRAM-Blockgerät anzeigt.

In unserem Screenshot können Sie eine typische Auslagerungsdatei sehen, die mit einem einzelnen ZRAM-Blockgerät koexistiert. Auf diesem hatte mein System 4 GB RAM und 2 GB ZRAM, was der Hälfte unseres RAM-Bestands entspricht. Abhängig von Ihrer Arbeitslast möchten Sie diese Größe jedoch möglicherweise ändern.

  • Wenn Sie mit Multimedia und Video arbeiten, sind diese nicht sehr komprimierbar. Daher ist es wahrscheinlich am besten, wenn Sie die Größe Ihres ZRAM reduzieren und die Größe Ihres tatsächlichen Swaps erhöhen.
  • Wenn Sie mit großen Datenbanken oder anderen Datentypen arbeiten, die stark komprimierbar sind, ist das Gegenteil der Fall. In solchen Szenarien können Sie die Reaktionsfähigkeit Ihres Computers erhöhen, indem Sie die ZRAM-Größe erhöhen.

Eine weitere Optimierung, die es wert ist, untersucht zu werden, betrifft den von ZRAM verwendeten Komprimierungsalgorithmus. Standardmäßig wird LZO oder LZO-RLE verwendet, was die CPU schont. Auf modernen CPUs bietet der neuere ZSTD-Algorithmus jedoch normalerweise bessere Komprimierungsraten und die etwas höhere Belastung der CPU ist nicht spürbar. Es lohnt sich, diesen Algorithmus anstelle der älteren LZO-Varianten zu verwenden, wenn Ihr PC weniger als ein Jahrzehnt alt ist.

Ändern Sie die ZRAM-Größe

Um die ZRAM-Einstellungen zu ändern, müssen Sie das Exec-Skript im Ordner „/usr/bin“ bearbeiten. Geben Sie im Terminal den folgenden Befehl ein:

Scrollen Sie durch das „init-zram-swapping“-Skript und suchen Sie die Zeile, die mit beginnt mem.

Ein Terminal, das die Mem-Variable im Zram-Swapping-Skript hervorhebt.

Dies definiert, wie viel Speicherplatz Ihr Kernel für das ZRAM-Blockgerät zuweist. Standardmäßig reserviert es die Hälfte des physischen Speichers Ihres Systems. Sie können diese Zahl auf ein Viertel reduzieren, indem Sie „1024“ durch „512“ ersetzen.

Ein Terminal, das den unteren Speicheroffset für die Mem-Variable hervorhebt.

Sie können auch die Speichermenge erhöhen, die ZRAM benötigt, indem Sie den Mem-Wert auf „1536“ setzen. Dadurch werden drei Viertel Ihres physischen Speichers dem ZRAM zugewiesen.

Ein Terminal, das einen höheren Speicheroffset für die Mem-Variable hervorhebt.

Ändern Sie den ZRAM-Komprimierungsalgorithmus

Sie können an derselben Stelle auch den Komprimierungsalgorithmus von ZRAM ändern. Öffnen Sie dazu eine neue Terminalsitzung und listen Sie dann alle verfügbaren Komprimierungsalgorithmen für ZRAM auf:

Ein Terminal, das alle verfügbaren Komprimierungsalgorithmen für das ZRAM-Modul anzeigt.

Sie können Algorithmen in erweiterten benutzerdefinierten ZRAM-Konfigurationen kombinieren und anpassen. Wenn Sie jedoch die Standardwerte verwenden, verwenden alle ZRAM-Partitionen denselben Algorithmus.

Kehren Sie zum Exec-Skript „init-zram-swapping“ zurück, das wir zuvor bearbeitet haben. Dort finden Sie die folgende Zeile:

Kopieren Sie es und fügen Sie es direkt unten ein, sodass Sie zwei Instanzen desselben Befehls haben.

Ein Terminal, das die doppelte Echo-UNIX-Pipe für das ZRAM-Blockgerät hervorhebt.

Ersetzen Sie das $memerste Mal am Anfang der Zeile durch „zstd“.

Ein Terminal, das die zstd-Zeichenfolge für die erste Echo-UNIX-Pipe hervorhebt.

Ändern Sie das Ende der Zeile von „disksize“ in „comp_algorithm“.

Ein Terminal, das die comp_algorithm-Zeichenfolge für die erste Echo-UNIX-Pipe hervorhebt.

Speichern Sie Ihre optimierte „init-zram-swapping“-Datei und starten Sie dann Ihren Computer neu.

Überprüfen Sie, ob Ihre neue ZRAM-Einstellung funktioniert, indem Sie den zramctlBefehl ausführen.

Ein Terminal, das das ZRAM-Blockgerät zeigt, das eine größere Speicherbasis und einen anderen Algorithmus verwendet.

Überprüfen Sie unbedingt die Leistung Ihres Systems unter Last, wenn es Ihren optimierten Swap aktiv nutzt. Wenn Sie das Gefühl haben, dass es tuckert oder stottert, haben Sie es möglicherweise übertrieben und müssen die von Ihnen gewählten Werte herunterdrehen. Wenn es hingegen fliegt, können Sie sie wahrscheinlich noch weiter erhöhen.

Die Konfiguration des ZRAM Ihres Systems ist nur der erste Schritt zur Optimierung Ihres Ubuntu-Systems. Erfahren Sie, wie Sie die maximale Leistung aus Ihrem Rechner herausholen können, indem Sie Ihren eigenen Linux-Kernel auf Ubuntu kompilieren . Wenn Sie in der Zwischenzeit einen leistungsstärkeren PC bauen möchten, sollten Sie Folgendes beachten, wenn Sie einen PC für Linux bauen .

Bildnachweis: Liam Briese über Unsplash . Alle Änderungen und Screenshots von Ramces Red.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert