Ubuntu «swappiness»


Σε ένα από τα PC μου, χρησιμοποιώ αποκλειστικά Ubuntu χωρίς να  αντιμετωπίζω ιδιαίτερα προβλήματα με την χρήση του. Ύστερα από 4 μήνες καθημερινής λειτουργίας, σίγουρα είμαι αρκετά ικανοποιημένος, διότι ότι έκανα προ Linux εποχής, έχοντας τα Windows Vista, το κάνω τώρα με το νέο μου λειτουργικό. Για να είμαι αντικειμενικός, σε κάποια πράγματα είναι καλύτερο σε άλλα όχι, ίσως επειδή θέλει λίγο περισσότερο ψάξιμο ώστε να ρυθμιστεί κατάλληλα και να προσαρμοστεί στις απαιτήσεις μου. Σε ένα μελλοντικό post θα αναφερθώ στα υπέρ και τα κατά (Ubuntu Vs Vista).

Για παράδειγμα αρκετές φορές παρατηρούσα πως όταν «φόρτωνα» το λειτουργικό με ορισμένες απαιτητικές εφαρμογές σε μνήμη, δούλευε υπερβολικά ο σκληρός μου δίσκος, επειδή το Ubuntu χρησιμοποιούσε για μνήμη το swap file και όχι την RAM, παρότι είχα αρκετή φυσική μνήμη ελεύθερη. Αυτό είχε ως αποτέλεσμα, αρκετά συχνά, να «σέρνεται» το σύστημα μου. Ακόμα και ο δείκτης του mouse κολλούσε για μερικά δευτερόλεπτα οπότε έπρεπε να κλείνω ορισμένα προγράμματα ώστε να απελευθερώνεται λίγο η RAM και να επανέρχονται όλα σε φυσιολογικούς ρυθμούς.

Η λύση βρίσκεται εδώ και πρόκειται για μία ρύθμιση του ubuntu, την «swappiness». Αυτή η παράμετρος καθορίζει την «τάση» του kernel να προωθεί τις διεργασίες από την φυσική μνήμη στο swap file. Επειδή όπως όλοι γνωρίζεται ο σκληρός δίσκος είναι πολύ πιο αργός από την RAM, ένα μεγάλο νούμερο στην παράμετρο swappiness μπορεί να οδηγήσει το σύστημα στην κυριολεξία να σέρνεται!!!

  • Η παράμετρος swappiness μπορεί να πάρει τιμές μεταξύ 0 και 100
  • swappiness=0 λέει στον kernel να αποφεύγει να φορτώνει τις διεργασίες στην swap memory
  • swappiness=100 λέει στον kernel να μεταφέρει συνέχεια τις διεργασίες από την φυσική μνήμη στο swap file

Η έκδοση Desktop του Ubuntu είναι ρυθμισμένη ώστε η παράμετρος swappiness να έχει την τιμή 60. Νούμερο που προκαλεί κατά την άποψή μου πρόβλημα στην λειτουργία ενός PC με περίπου 2 GB μνήμη.

Στο παράθυρο ενός τερματικού δίνοντας την παρακάτω εντολή μπορούμε να δόυμε την τιμή της παραμέτρου swappiness:

cat /proc/sys/vm/swappiness

Μπορούμε να αλλάξουμε αυτή την τιμή π.χ. σε 40 δίνοντας :

sudo sysctl vm.swappiness=40

Προκειμένου να κρατήσει το Ubuntu αυτή την ρύθμιση και μετά από ένα restart πληκτρολογούμε :

sudo gedit /etc/sysctl.conf

Ψάχνουμε για την γραμμή που περιέχει «vm.swappiness» και αλλάζουμε την τιμή. Αν δεν υπάρχει μπορούμε να την προσθέσουμε στο τέλος του αρχείου δίνοντας :

vm.swappiness=40

Εγώ προς το παρόν έχω ορίσει το vm.swappiness στο 40 και το PC μου πηγαίνει πολύ καλύτερα. Θα πειραματιστώ πάντως και με άλλες τιμές έως ότου καταλήξω που θα την αφήσω.

, ,

  1. No comments yet.
(will not be published)