Σπάνια γράφω για νέα σχετικά με τις εκδόσεις του πυρήνα. Αλλά όταν γράφω, είναι σημαντικό. Τέλος. Ο πυρήνας Linux στην πραγματικότητα (όπως το θέλει ο δημιουργός του, Linus Torvalds) θα πρέπει να είναι αόρατος και να μην μπλέκει στα πόδια του τελικού χρήστη. Επειδή αποτελεί ένα από τα ταχύτερα αναπτυσσόμενα ελεύθερα λογισμικά, θα είναι δύσκολο να παρακολουθεί κάποιος τις εξελίξεις γύρο του.

linux-kernel-4-12

Όταν όμως οι αλλαγές που συμβαίνουν, επηρεάζουν την καθημερινότητα του χρήστη τότε αξίζει να ρίξει κανείς μια ματιά.

Σημείωση: Όσοι είστε σε διανομές όπως Ubuntu/Debian/Fedora/OpenSUSE Leap κλπ τα οποία έχουν έναν σταθερό κύκλο ανάπτυξης που ξεκινάει από 6 έως 2-3 χρόνια, θα λάβουν την νέα έκδοση πυρήνα μαζί με την νέα έκδοση της διανομής τους.

Όσοι είστε σε διανομές κυλιόμενες, δεν χρειάζεται να σας πω τίποτα, μιας και εντός ημερών θα λάβετε την νέα έκδοση.

Ίσως η σημαντικότερη αλλαγή, κατά την άποψή μου είναι αυτή της προσθήκης του BFQ στον πυρήνα. Κάτι που εδώ και μερικά χρόνια και εγώ (παλιότερα με τον optimus kernel)αλλά κυρίως ο Νίκος παρέχει πυρήνες με ενσωματωμένο το BFQ. Όσοι δεν γνωρίζετε τι είναι το BFQ μπορείτε να διαβάσετε στο άρθρο του Νίκου, στο προσωπικό του Blog.

Με λίγα λόγια όμως μπορούμε να πούμε ότι βελτιώνει την απόκριση του Desktop μας σε σχέση με τον default CFQ.

Όσοι χρήστες του Ubuntu θα ήθελαν να κατεβάσουν ΤΩΡΑ την νέα έκδοση του πυρήνα για δοκιμή θα πρέπει να κάνουν 2 πράγματα:

  • Να το κατεβάσουν και να το κάνουν εγκατάσταση,
  • Να μπουν με τον νέο πυρήνα και να ενεργοποιήσουν το BFQ

Προσοχή, όσοι χρησιμοποιείτε Drivers της Nvidia και AMD για τις κάρτες γραφικών σας  σταματήστε εδώ και μην κάνετε τίποτα απο τα παρακάτω. Όσοι όμως χρησιμοποιούν τους ανοιχτούς οδηγούς Nvidia, AMD η Intel μπορούν να κατεβάσουν και να κάνουνε εγκατάσταση την νέα έκδοση Πυρήνα :

Ωραία, τα εγκαταστήσατε και bootάρατε με αυτό τον πυρήνα, πως ενεργοποιείτε το BFQ; Ανοίξτε ένα τερματικό και δείτε πρώτα ότι έχετε μπει με τον σωστό πυρήνα:

uname -r

Θα πρέπει να σας επιστρέψει την έκδοση 4.12.x.x.x.x αν ναι, τότε ανοίγετε με δικαιώματα sudo το αρχείο /etc/default/grub με τον κειμενογράφο της επιλογής σας και βρίσκετε την ένδειξη

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

όπου δίπλα απο το quiet αφήνετε ένα κενό και γράφετε elevator=bfq και θα φαίνεται κάπως έτσι:

GRUB_CMDLINE_LINUX_DEFAULT="quiet scsi_mod.use_blk_mq=y dm_mod.use_blk_mq=y elevator=bfq"

Κλείνετε και αποθηκεύετε το αρχείο. Ενημερώνετε της αλλαγές σας με την εντολή:

sudo update-grub

και έπειτα κάνετε επανεκκίνηση. Αφού μπείτε ξανά στο Desktop, ανοίξτε πάλι ενα τερματικό και δώστε :

cat /sys/block/sd*/queue/scheduler

όπου θα δείτε λογικά την ένδειξη [none] και άρα είναι ενεργό.

ή μπορείτε να τρέξετε :

sudo tree /sys/block/sd*/mq

Όπου θα δείτε ένα δέντρο αντιστοίχησης ανά πυρήνα της CPU. Ή εναλακτικά αν εγκαταστήσετε και το tlp (sudo apt install tlp) και τρέξετε :

sudo tlp-stat -d|grep Sch

θα δείτε να λέει : Scheduler = blk-mq

Στην παρακάτω εικόνα έχω τρέξει όλες τις εντολές που δείχνουν τις ρυθμίσεις μου αλλά και την ενεργοποίηση του BFQ, για να δείτε τα δικά μου αποτελέσματα:

linux-4-12-bfq-blk-mq-energopoihsh

Επίλογος

Φαίνεται ότι μετά από χρόνια, ο Linus τελικά αποδέχτηκε το BFQ για ενσωμάτωση στον πυρήνα και μάλιστα μέσω του BLK-MQ framwork.

Πείτε μου στα σχόλια αν είδατε διαφορά στο άνοιγμα των εφαρμογών και γενικά στην απόκριση του συστήματος.