Jump to content
  • Newsbot
    Newsbot

    Πυρήνας Linux: Patch από προγραμματιστή της Meta βελτιώνει τη σταθερότητα των καρέ στο Steam Deck

    • Ο David Vernet, μηχανικός πυρήνα Linux στη Meta, υπέβαλε σειρά patches που προσθέτουν νέα λειτουργία στον οδηγό amd-pstate για AMD APU σε φορητές κονσόλες gaming.
    • Σε δοκιμή του Civilization VI στο Steam Deck, το 1%-low frame rate (η απόδοση στο χειρότερο 1% των καρέ) βελτιώθηκε κατά 31,8%, ενώ ο μέσος όρος καρέ ανά δευτερόλεπτο δεν άλλαξε.
    • Η λειτουργία, με την ονομασία epp_boost, δειγματίζει κάθε πυρήνα ανά 10 ms και τον περνά σε κατάσταση «performance» όταν ξεπερνά το 50% χρήσης.

    Το Steam Deck βασίζεται σε APU (επεξεργαστές που συνδυάζουν CPU και GPU σε ένα chip) της AMD και στο λειτουργικό SteamOS, μια διανομή Linux φτιαγμένη ειδικά για gaming. Επειδή η κατανάλωση ενέργειας σε μια φορητή συσκευή είναι περιορισμένη, οι επιδόσεις εξαρτώνται σε μεγάλο βαθμό από το πόσο έξυπνα διαχειρίζεται το λογισμικό τη συχνότητα του επεξεργαστή. Εκεί επικεντρώθηκε η δουλειά του David Vernet, μηχανικού πυρήνα Linux στη Meta, ο οποίος πρόσφατα ανακοίνωσε νέα patches για τον οδηγό amd-pstate.

    Τι είναι το amd-pstate και το EPP

    Ο amd-pstate είναι ο οδηγός που ελέγχει τη συχνότητα λειτουργίας των επεξεργαστών AMD κάτω από Linux. Περιλαμβάνει τη ρύθμιση Energy Performance Preference (EPP), μια παράμετρο που ενημερώνει το hardware αν το τρέχον πρόγραμμα χρειάζεται μέγιστη ταχύτητα ή αν προτεραιότητα έχει η εξοικονόμηση ενέργειας. Στην τρέχουσα λειτουργία active EPP, το ίδιο το APU αποφασίζει τη στρατηγική ανάλογα με το φορτίο εργασίας. Σύμφωνα με τον Vernet, αυτή η προσέγγιση δεν αποδίδει καλά σε παιχνίδια, όπου συνήθως υπάρχει ένα κύριο «busy» νήμα (thread) που εναλλάσσεται συχνά μεταξύ έντονης δραστηριότητας και σύντομων παύσεων.

    Πώς λειτουργεί το epp_boost

    Τα νέα patches προσθέτουν μια λειτουργία ονόματι epp_boost, η οποία δειγματίζει κάθε πυρήνα του επεξεργαστή ανά 10 χιλιοστά του δευτερολέπτου. Αν ένας πυρήνας βρεθεί απασχολημένος τουλάχιστον στο 50% κατά τη στιγμή της δειγματοληψίας, η τιμή EPP του ορίζεται σε «performance» και παραμένει εκεί. Ο οδηγός επαναφέρει την προηγούμενη ρύθμιση μόνο αν περάσουν 300 χιλιοστά του δευτερολέπτου χωρίς νέο δείγμα απασχόλησης. Στην πράξη, ο μηχανισμός δίνει προτεραιότητα σε ταχύτητα ακριβώς τη στιγμή που ένα νήμα ξυπνά από παύση, αντί να περιμένει να αποφασίσει το ίδιο το APU.

    Τα αποτελέσματα των δοκιμών

    Σύμφωνα με μετρήσεις που παρείχε ο ίδιος ο Vernet, ο μηχανισμός epp_boost επηρέασε πιο αισθητά το 1%-low frame rate, δηλαδή τον μέσο όρο καρέ στο χειρότερο 1% των περιπτώσεων παιχνιδιού, μέγεθος που αντικατοπτρίζει καλύτερα το αίσθημα του stuttering από ό,τι ο απλός μέσος όρος καρέ ανά δευτερόλεπτο. Στη δοκιμή του Civilization VI στο Steam Deck, το 1%-low βελτιώθηκε κατά 31,8%, ενώ ο δείκτης p99 frame time (ο χρόνος απόδοσης καρέ στο χειρότερο 1% των περιπτώσεων) βελτιώθηκε κατά 4,1%. Ο μέσος όρος καρέ ανά δευτερόλεπτο δεν άλλαξε, κάτι που ο Vernet δεν παρουσίασε ως πρόβλημα αφού ο στόχος των patches είναι η σταθερότητα και όχι η ωμή απόδοση.

    Η επιλογή του Civilization VI δεν ήταν τυχαία. Το παιχνίδι στηρίζεται σε μεγάλο βαθμό σε ένα νήμα CPU και διαθέτει ενσωματωμένο εργαλείο μέτρησης επιδόσεων που επιτρέπει επαναλήψιμες δοκιμές, στοιχεία χρήσιμα για την τεκμηρίωση ενός patch πριν αυτό ενταχθεί στον πυρήνα. Το αποτέλεσμα, ωστόσο, αφορά ρητά μόνο αυτό το ένα παιχνίδι και δεν έχει επιβεβαιωθεί ανεξάρτητα σε ευρύτερη βιβλιοθήκη τίτλων.

    Τι σημαίνει στην πράξη

    Τα patches βρίσκονται ακόμη σε φάση υποβολής και αξιολόγησης από την κοινότητα του πυρήνα Linux, δεν έχουν ενταχθεί σε επίσημη έκδοση ούτε έχουν επιβεβαιωθεί ως μέρος κάποιας μελλοντικής ενημέρωσης του SteamOS. Θεωρητικά, όποια φορητή κονσόλα gaming βασισμένη σε AMD APU και τρέχει Linux ή SteamOS θα μπορούσε να επωφεληθεί από τον ίδιο μηχανισμό, αφού η λογική του epp_boost δεν είναι ειδικά δεμένη με το Steam Deck αλλά με τον τρόπο που η AMD σχεδίασε τον οδηγό amd-pstate. Το πρακτικό όφελος για τον μέσο χρήστη θα εξαρτηθεί από το αν και πότε η Valve ή η κοινότητα ενσωματώσουν τελικά τη λειτουργία σε επίσημο πυρήνα του SteamOS.

    Πηγές


×
×
  • Δημιουργία...

Important Information

Ο ιστότοπος theLab.gr χρησιμοποιεί cookies για να διασφαλίσει την καλύτερη εμπειρία σας κατά την περιήγηση. Μπορείτε να προσαρμόσετε τις ρυθμίσεις των cookies σας , διαφορετικά θα υποθέσουμε ότι είστε εντάξει για να συνεχίσετε.