Ο πυρήνας Linux είναι η ραχοκοκαλιά των λειτουργικών συστημάτων (OS) Linux και είναι η θεμελιώδης διεπαφή μεταξύ του υλικού ενός υπολογιστή και των διαδικασιών του.
πριν ΛΙΓΕΣ μερες Μοιραζόμαστε εδώ στο blog τα νέα μιας από τις αλλαγές Τι μπορούμε να βρούμε στο λανσάρισμα του πυρήνα Linux 6.9, που αυτή τη στιγμή βρίσκεται σε εξέλιξη και έχουν ήδη γίνει γνωστές διάφορες αλλαγές και αυτό που ανακοινώσαμε ήταν ότι το EXT2 έχει ήδη περάσει στην κατηγορία των απαρχαιωμένων και επίσης ότι η χρήση του παλιού προγράμματος οδήγησης NTFS θα αφεθεί στην άκρη υπέρ του πρόγραμμα οδήγησης που αναπτύχθηκε από την Paragon Software.
Τώρα, στα τελευταία νέα σχετικά με τις νέες δυνατότητες που θα μας παρουσιάσει το Linux 6.9, είναι αυτό Αυτή η έκδοση του πυρήνα θα φέρει σημαντική βελτίωση στον χρόνο εκκίνησης για χρήστες που διαχειρίζονται συστήματα με μεγάλες ποσότητες μνήμης RAM, ειδικά εκείνων που Χρησιμοποιούν τις σελίδες HugeTLB. Αυτό οδηγεί σε σημαντική μείωση του χρόνου που απαιτείται για την προετοιμασία αυτών των σελίδων κατά τη διαδικασία εκκίνησης του συστήματος.
Και η αλλαγή προστέθηκε στο Linux 6.9 θα επιτρέψει σε συστήματα με μεγάλο αριθμό σελίδων HugeTLB να βιώσουν αισθητή μείωση την ώρα έναρξης. Για παράδειγμα, σε συστήματα 2 TB όπου αρχικοποιούνται 1800 σελίδες 1 GB, τα οποία επί του παρόντος χρειάζονται από 1 έως 2 δευτερόλεπτα από τα συνολικά 10 δευτερόλεπτα, που είναι αναμφίβολα μια σημαντική βελτίωση σε αυτές τις εποχές. Ομοίως, σε κεντρικούς υπολογιστές Intel 12 TB όπου αρχικοποιούνται 11 σελίδες 776 GB, κάτι που μπορεί να διαρκέσει περισσότερο από ένα λεπτό, θα δείτε σημαντική μείωση σε αυτούς τους χρόνους εκκίνησης.
Αυτές οι προόδους έγιναν δυνατά από την αφοσιωμένη εργασία του προγραμματιστή Linux Gang Li της Bytedance, ο οποίος εφάρμοσε μια σειρά από ενημερώσεις κώδικα που πέρασαν από πολλαπλές αναθεωρήσεις για να εξασφαλίσουν αποτελεσματική εκτέλεση. Η υπάρχουσα υποδομή πυρήνα, όπως π.χ padata_do_multithreaded, χρησιμοποιήθηκε με ελάχιστες τροποποιήσεις για την επίτευξη αυτών των αποτελεσμάτων.
Δύο ενημερώσεις στο v6…
– Διορθώθηκε το πιθανό σφάλμα στο together_bootmem_prealloc_node
Η υλοποίηση padata_do_multithreaded διασφαλίζει ότι το καθένα
Η εργασία together_bootmem_prealloc_node χειρίζεται έναν κόμβο. Ωστόσο, το API περιέγραψε
στο σχόλιο padata_do_multithreaded υποδεικνύει ότι το padata_do_multithreaded επίσης
Μπορείτε να αντιστοιχίσετε πολλούς κόμβους σε μια εργασία together_bootmem_prealloc_node.Για να αποφύγετε πιθανά σφάλματα από μελλοντικές αλλαγές στο padata_do_multithreaded,
Το together_bootmem_prealloc_parallel εισάγεται για την αναδίπλωση του
together_bootmem_prealloc_node.
Τα οφέλη από αυτές τις βελτιώσεις είναι ιδιαίτερα αξιοσημείωτο σε περιβάλλοντα όπου η διαθεσιμότητα υπηρεσιών και ο χρόνος λειτουργίας του συστήματος είναι κρίσιμοι, όπως στην περίπτωση υπερκλιμακωτών και μεγάλων οργανισμών που διαχειρίζονται πολύ μεγάλους διακομιστές. Η μείωση του χρόνου εκκίνησης κατά τις επανεκκινήσεις έχει μεγάλο όφελος για τη διασφάλιση ταχύτερου και αποτελεσματικότερου χρόνου λειτουργίας.
Εκτός αυτού, Αξίζει επίσης να αναφέρουμε μια άλλη αλλαγή τα οποία έχουν συμπεριληφθεί στο Linux 6.9 που είναι ένα patch από έναν έμπειρο μηχανικό Linux στην Intel, το οποίο εισάγει μια βελτιωμένη τεχνική για τον περιορισμό του εύρους ζώνης μνήμης σε ανανεώσεις κρυφής μνήμης x86, παρόμοιο με αυτό που χρησιμοποιεί η Intel σε επεξεργαστές RDT και AMD EPYC με τον κωδικό resctrl.
Ο συγγραφέας του patch αναφέρει ότι:
Ο βρόχος ανάδρασης MBA_mbps αυξάνει τον περιορισμό όταν μια ομάδα χρησιμοποιεί περισσότερο εύρος ζώνης από τον χρήστη που έχει οριστεί στο αρχείο σχήματος και μειώνει τον περιορισμό όταν είναι κάτω από τον στόχο.
Αξίζει να αναφέρουμε ότι η νέα τεχνική για τον περιορισμό του εύρους ζώνης μνήμης έχει σχεδιαστεί για να χειρίζεται πιο αποτελεσματικά φόρτους εργασίας με μη ομοιόμορφα επίπεδα φορτίουs, αποφεύγοντας περιττές ποινές που συνέβησαν σε προηγούμενες εκδόσεις του πυρήνα.
Για να αποφευχθούν περιττές διακυμάνσεις στην ταχύτητα σε κάθε επανάληψη, η σημαία «delta_comp» χρησιμοποιείται για να υποδείξει τις πραγματικές αλλαγές στο εύρος ζώνης που θα καταγραφούν στην επόμενη επανάληψη στο «delta_bw». Ο περιορισμός μειώνεται μόνο εάν το τρέχον εύρος ζώνης συν delta_bw είναι κάτω από τον στόχο του χρήστη.
Ως τέτοιο αναφέρεται ότι Ο αλγόριθμος λειτουργεί καλά με σταθερούς φόρτους εργασίας εύρους ζώνης, αλλά μπορεί να αποτύχει εάν ο φόρτος εργασίας αλλάξει ακριβώς όταν αλλάζει το στραγγαλισμό. Για να αντιμετωπιστεί αυτό, εφαρμόστηκε μια απλούστερη τεχνική που υπολογίζει την πιθανή αύξηση του εύρους ζώνης εάν ο στραγγαλισμός μειωθεί στο επόμενο υψηλότερο επίπεδο, διασφαλίζοντας ότι παραμένει κάτω από τον στόχο του χρήστη πριν μειωθεί ο στραγγαλισμός.
Αν είστε ενδιαφέρεται να μάθει περισσότερα για αυτό, μπορείτε να συμβουλευτείτε τις λεπτομέρειες στους παρακάτω συνδέσμους:
- Hugetlb: Παραλληλισμός της σελίδας Hugetlb κατά την εκκίνηση
- Εφαρμογή νέας τεχνικής περιορισμού MBA_mbps