Kanonisches Unternehmen
Standardmäßig speichert der Kernel beim Speichern eines Speicherauszugs für den Ruhezustand den Speicher wie bei allen Caches, es gibt jedoch eine Standardfunktion, um unnötige Strukturen freizugeben, indem in der Anfangsphase des Eintritts in den Ruhezustand Ressourcenknappheit simuliert wird. Diese Funktion kann über den Parameter „/sys/power/image_size“ aktiviert werden und führt zu einer spürbaren Verkürzung der Zeit bis zum Übergang in den Schlafmodus. Canonical schlägt vor, zwei weitere Parameter hinzuzufügen: „/sys/power/mm_reclaim/run“ und
„/sys/power/mm_reclaim/release“, mit dem Sie die Freigabe unnötiger Strukturen im Voraus auslösen können, sodass der eigentliche Übergang in den Schlafmodus so schnell wie möglich erfolgt und die Rückkehr aus dem Schlafmodus etwa genauso lange dauert wie bei Verwendung eines im Kernel vorhandenen Parameters „/sys/power/image_size“.
Tests auf einem System mit 8 GB RAM und 8 GB Swap-Partition mit 85 % Speicherauslastung zeigten in den Standardeinstellungen (image_size=default) eine Verkürzung der Zeit bis zum Wechsel in den Ruhemodus von 51.56 auf 4.19 Sekunden beim Einleiten des Prozesses Löschen des überschüssigen Speichers 60 Sekunden vor dem Wechsel in den Schlafmodus. Schlafmodus. Durch die Reduzierung der Größe des gespeicherten Speicherabbilds verringerte sich die Wiederherstellungszeit von 26.34 auf 5 Sekunden. Als das System den Standardmodus zum Löschen von überschüssigem Speicher (image_size=0) einschaltete, wurde die Zeit bis zum Wechsel in den Schlafmodus von 73.22 auf 5.36 Sekunden verkürzt, und die Zeit bis zur Rückkehr aus dem Schlafmodus blieb praktisch unverändert (sie wurde nur um a verkürzt). Bruchteil einer Sekunde, von 5.32 auf 5.26 Sekunden).
Die vorgeschlagene Methode kann in Situationen gefragt sein, in denen ein sehr schneller Wechsel in den Schlafmodus erforderlich ist und die Notwendigkeit eines solchen Übergangs im Voraus vorhersehbar ist. Beispielsweise sind in Cloud-Systemen virtuelle Umgebungen mit niedriger Priorität (
Source: opennet.ru