• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Gelöst ZRAM - konfiguration

dietterle65

Hacker
Code:
ssd-linux:~ # zramctl
NAME       ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram7 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram6 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram5 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram4 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram3 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram2 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram1 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
/dev/zram0 lzo-rle     979.3M   4K   74B   12K       8 [SWAP]
ssd-linux:~ #
 

Christina

Moderator
Teammitglied
Da fehlt leider die Info, wie du das alles genau konfiguriert hast, denn so ist es leider falsch.
Du benötigst eine (1) RAM-Disk, so mit etwa der physischen RAM-Größe (d.h. 8 GiB). Die Parallelisierung erfolgt über die 8 Streams (= 8 Threads deiner CPU).
Vor dem Linux-Kernel 3.15 musste eine Quasi-Parallelisierung über mehrere ZRAM-Disks anhand der Anzahl der CPU-Threads erfolgen.
 
OP
dietterle65

dietterle65

Hacker
Ich habe nichts konfiguriert.
Bei den Diensten habe ich die beiden Einträge auf Systemstart gestellt, das war es.

Screenshot_20240325_185425.jpg
 

Christina

Moderator
Teammitglied
Lasse bitte die bunten Bilder weg, damit können wir meistens nichts anfangen, so auch in deinem Fall.
Am transparentesten ist es, ZRAM von Hand zu konfigurieren. Das kann ich dir komplett geben. Dann ist es auf jeden Fall richtig.
Zuerst musst du aber das Angeklickte alles rückgängig machen.
 

Christina

Moderator
Teammitglied
Mir scheint, dass bei SuSE die Zram-Konfiguration* hier nicht auf dem aktuellen Stand der Programmierung* von Linux Kernel ≥4.6 ist.
Wenn du dir da etwas Anklickbares installiert hast, solltest du es bitte auch dazuschreiben (siehe oben)!

Es gibt viele Möglichkeiten, ZRAM einzurichten. Ich verwende 1.2 (Using a udev rule) und 2.3 (Optimizing swap on zram ),
siehe: wiki.archlinux.org/title/Zram
Hinweis: Die Option für UUID »mkswap -U clear« gemäß Wiki bitte nicht verwenden, da »clear« keine gültige UUID ist.
Code:
leap155:~ # cat /etc/udev/rules.d/99-zram.rules
ACTION=="add", KERNEL=="zram0", ATTR{comp_algorithm}="zstd", ATTR{disksize}="8G", RUN="/usr/sbin/mkswap /dev/%k", TAG+="systemd"
Rich (BBCode):
leap155:~ # grep -c processor /proc/cpuinfo
4
leap155:~ # zramctl
NAME       ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram0 zstd            8G   4K   68B    4K       4 [SWAP]
leap155:~ # grep MemTotal /proc/meminfo
MemTotal:        7590856 kB
DISKSIZE darf, abhängig vom Kompressionsalgorithmus, auch Faktor 2—3,5 von MemTotal betragen (Overhead beachten, siehe: COMPR & TOTAL).

Fußnote *) https://www.kernel.org/doc/Documentation/blockdev/zram.txt
2) Set max number of compression streams
Regardless the value passed to this attribute, ZRAM will always allocate multiple compression streams - one per online CPUs - thus allowing several concurrent compression operations. The number of allocated compression streams goes down when some of the CPUs become offline. There is no single-compression-stream mode anymore, unless you are running a UP system or has only 1 CPU online.

To find out how many streams are currently available:
cat /sys/block/zram0/max_comp_streams
man zramctl schrieb:
-t, --streams number
Set the maximum number of compression streams that can be used for the device. The
default is
use all CPUs and one stream for kernels older than 4.6.

Zeige bitte noch diese Ausgabe:
Code:
zypper search zram --details
Code:
grep -i zram /var/log/zypp/history
Lg, Christina
 

susejunky

Moderator
Teammitglied
Hallo @Christina ,

da ich zram weder verwende noch überhaupt kenne, kann ich nichts zu zram sagen.

Aber ich konnte mich an die zitierte Diskussion auf der Mailingliste erinnern. Und für den Fall, dass das dort diskutierte für jemanden, der den vorliegenden Beitrag liest, hilfreich sein könnte, habe ich den Link hier zur Verfügung gestellt (wie gesagt: nur zur Information).

Viele Grüße

susejunky
 

Christina

Moderator
Teammitglied
für den Fall, dass das dort diskutierte für jemanden, der den vorliegenden Beitrag liest, hilfreich sein könnte,
In der Diskussion geht es aber nur darum, wann ZRAM sinnvoll ist; nicht um eine fehlerhafte, weil veraltete ZRAM-Konfiguration (Thema hier).
Das dort Diskutierte ist auch nur oberflächlich. ZRAM gibt es schon seit 10 Jahren und nannte sich davor compcache.
In wiki.archlinux.org/title/Zram steht schon viel Informatives (siehe auch die Links).

A propos sinnvoll:
Es gibt nicht nur Leute, die in ein älteres System kein Geld mehr stecken wollen. Es gibt auch Rechner, bei denen RAM nicht aufgerüstet werden kann, weil die Chips aufs Mainboard aufgelötet sind. Das ist schon seit vielen Jahren eine Sparmaßnahme vieler Hersteller und Teil der geplanten Obsoleszenz.

P.S.
Mit Linux Kernel 5.8 ist vm.swappiness grundlegend überarbeitet worden.
Hier im derzeit aktuellen Kernel 6.8: linux/mm/vmscan.c at v6.8 · torvalds/linux
In diesem Artikel gibt es eine kleine Übersicht dazu: Swappiness in Linux | Baeldung on Linux
 
Zuletzt bearbeitet:
Oben