Überprüfen der Slab-Einstellungen mit sysctl vm
In diesem Schritt werden Sie Kernel-Parameter im Zusammenhang mit virtueller Arbeitsspeicherverwaltung (Virtual Memory, VM) und dem Slab-Allocator mithilfe des Befehls sysctl
untersuchen. sysctl
ist ein Werkzeug, das es Ihnen ermöglicht, Kernel-Parameter zur Laufzeit anzuzeigen und zu ändern.
Kernel-Parameter sind Konfigurationsoptionen, die das Verhalten des Linux-Kernels beeinflussen. Viele dieser Parameter befinden sich im /proc/sys
-Dateisystem. sysctl
bietet eine bequeme Möglichkeit, auf diese Parameter zuzugreifen und sie zu verwalten, ohne direkt mit den Dateien in /proc/sys
zu interagieren.
Wir interessieren uns für Parameter im Zusammenhang mit virtueller Arbeitsspeicherverwaltung, die oft Einstellungen enthalten, die die Speicherverwaltung beeinflussen, einschließlich Aspekte des Slab-Allocators. Diese Parameter sind typischerweise unter dem vm
-Unterbaum gruppiert.
Um alle Kernel-Parameter im Zusammenhang mit virtueller Arbeitsspeicherverwaltung anzuzeigen, verwenden Sie den sysctl
-Befehl mit dem vm
-Argument:
sysctl vm
Geben Sie den Befehl in Ihrem Terminal ein und drücken Sie die Eingabetaste. Sie werden eine Liste von Parametern und ihren aktuellen Werten sehen, ähnlich wie folgt:
vm.admin_reserve_kbytes = 8192
vm.block_dump = 0
vm.compact_memory = 0
vm.compact_unevictable_percentage = 1
vm.dirty_background_bytes = 0
vm.dirty_background_ratio = 10
vm.dirty_bytes = 0
vm.dirty_expire_centisecs = 3000
vm.dirty_ratio = 20
vm.dirtytime_expire_seconds = 43200
vm.drop_caches = 0
vm.extfrag_threshold = 500
vm.highmem_is_dirtyable = 0
vm.laptop_mode = 0
vm.lowmem_reserve_ratio = 256 256 32 0 0
vm.max_map_count = 65530
vm.min_free_kbytes = 67584
vm.min_slab_ratio = 5
vm.min_unmapped_ratio = 1
vm.mmap_min_addr = 65536
vm.nr_hugepages = 0
vm.nr_hugepages_mempolicy = 0
vm.nr_overcommit_hugepages = 0
vm.numa_balancing = 1
vm.numa_balancing_scan_delay_ms = 1000
vm.numa_balancing_scan_period_min_ms = 20
vm.numa_balancing_scan_period_max_ms = 10000
vm.numa_balancing_scan_size_mb = 32
vm.overcommit_memory = 0
vm.overcommit_ratio = 50
vm.page-cluster = 3
vm.panic_on_oom = 0
vm.percpu_pagelist_fraction = 0
vm.stat_interval = 1
vm.swappiness = 60
vm.user_reserve_kbytes = 131072
vm.vfs_cache_pressure = 100
Suchen Sie nach Parametern, die möglicherweise mit Caching oder Speicherdruck im Zusammenhang stehen, wie vm.vfs_cache_pressure
oder vm.min_slab_ratio
. Diese Parameter können beeinflussen, wie der Kernel verschiedene Arten von Caches verwaltet, einschließlich Slab-Caches.
Sie können auch einen bestimmten Parameter anzeigen, indem Sie seinen vollständigen Namen angeben. Beispielsweise, um den Wert von vm.vfs_cache_pressure
anzuzeigen:
sysctl vm.vfs_cache_pressure
Dieser Befehl wird die folgende Ausgabe liefern:
vm.vfs_cache_pressure = 100
Der Parameter vm.vfs_cache_pressure
steuert die Tendenz des Kernels, den Speicher, der für das Caching von Verzeichnis- und Inode-Objekten verwendet wird, freizugeben. Ein höherer Wert bedeutet, dass der Kernel aggressiver bei der Freigabe dieses Speichers ist.
Das Verständnis dieser Parameter kann Ihnen helfen, das Speicherverhalten Ihres Systems zu optimieren.
Klicken Sie auf Weiter, um zum nächsten Schritt zu gelangen.