Αν έχετε δει ποτέ κάτι σαν "PCI Express Active-State Power Management (ASPM) disabled" (Απενεργοποιημένη Διαχείριση Ενέργειας Ενεργής Κατάστασης PCI Express (ASPM)) σε μια αναφορά ενέργειας των Windows και σας έχει μείνει άβολο, μην ανησυχείτε: δεν είστε οι μόνοι. Αυτή η τεχνολογία ακούγεται πολύ τεχνική, αλλά στην πραγματικότητα καταλήγει στο πώς ο υπολογιστής σας αποφασίζει να εξισορροπήσει την κατανάλωση ενέργειας και την απόδοση όταν οι συσκευές PCI Express δεν λειτουργούν σε πλήρη ισχύ.
Η κατανόηση του τι είναι το Active State Power Manager και του τρόπου με τον οποίο επηρεάζει την απόδοση είναι το κλειδί, είτε χρησιμοποιείτε φορητό υπολογιστή και θέλετε να μεγιστοποιήσετε τη διάρκεια ζωής της μπαταρίας είτε διαχειρίζεστε διακομιστές ή ισχυρούς υπολογιστές και σας ενδιαφέρει περισσότερο η σταθερότητα και η μέγιστη απόδοση παρά η εξοικονόμηση μερικών watt. Ας το αναλύσουμε προσεκτικά, συνδέοντάς το με άλλες έννοιες όπως PCIe, ACPI, καταστάσεις ενέργειας, BIOS/UEFI και επιλογές τροφοδοσίας Windows και Linux.
Τι είναι η Διαχείριση Ενεργής Κατάστασης Ενέργειας (ASPM) στο PCI Express;
Η Διαχείριση Ενεργής Κατάστασης Ενέργειας (ASPM) είναι ένας μηχανισμός εξοικονόμησης ενέργειας ενσωματωμένος στο πρότυπο PCI Express που διαχειρίζεται την κατανάλωση ενέργειας των συνδέσεων PCIe όταν οι συνδεδεμένες συσκευές δεν μεταδίδουν ενεργά δεδομένα. Αντί να διατηρεί τη σύνδεση σε πλήρη ισχύ, η ASPM επιτρέπει στη σύνδεση μεταξύ της CPU ή του chipset και της συσκευής PCIe να μεταβαίνει σε καταστάσεις χαμηλής κατανάλωσης ενέργειας κατά τη διάρκεια περιόδων αδράνειας.
Η βασική ιδέα είναι πολύ απλή: όταν δεν υπάρχει κίνηση δεδομένων, ο σύνδεσμος «χαλαρώνεται », καταναλώνοντας λιγότερη ενέργεια και παράγοντας λιγότερη θερμότητα. Τη στιγμή που χρειάζεται ξανά, ο σύνδεσμος επιστρέφει στην ενεργό του κατάσταση. Αυτή η μετάβαση δεν είναι χωρίς κόστος: προσθέτει κάποια καθυστέρηση και εκεί έρχεται η ισορροπία μεταξύ απόδοσης και αποδοτικότητας.
Το ASPM παρακολουθεί την κατάσταση ενέργειας και στα δύο άκρα της σύνδεσης PCIe (για παράδειγμα, τον ελεγκτή PCIe του chipset και την κάρτα γραφικών ή τον ελεγκτή NVMe). Αυτό σημαίνει ότι η εξοικονόμηση ενέργειας συμβαίνει όχι μόνο σε επίπεδο συσκευής αλλά και στην ίδια τη φυσική σύνδεση (το επίπεδο μεταφοράς PCIe), ακόμη και όταν η συσκευή PCIe παραμένει σε πλήρως λειτουργική κατάσταση ενέργειας.
Στα συστήματα Linux, η καθολική συμπεριφορά του ASPM διαχειρίζεται από την ενότητα πυρήνα που αντιστοιχεί στο PCIe.Υπάρχει μια παράμετρος ενότητας που εκτίθεται στο /sys/module/pcie_aspm/parameters/policy όπου ορίζεται η πολιτική που θα εφαρμοστεί. Επιπλέον, παράμετροι όπως [οι ακόλουθες] μπορούν να χρησιμοποιηθούν κατά την εκκίνηση του πυρήνα. pcie_aspm=off για να το απενεργοποιήσετε καθολικά ή pcie_aspm=force να επιβάλλει το ASPM ακόμη και σε συσκευές που, θεωρητικά, δεν το υποστηρίζουν σωστά (κάτι που μπορεί να προκαλέσει προβλήματα σε προβληματικό υλικό).
Σχέση μεταξύ ASPM, Διαχείρισης ενέργειας κατάστασης σύνδεσης και επιλογών παροχής ενέργειας στα Windows
Στα Windows, αυτό που συνήθως εμφανίζεται στις επιλογές παροχής ενέργειας ως "Διαχείριση ενέργειας κατάστασης σύνδεσης" είναι ουσιαστικά ο τρόπος με τον οποίο το λειτουργικό σύστημα εκθέτει και ελέγχει την πολιτική ASPM των συμβατών συνδέσεων PCIe.
Αυτή η ρύθμιση βρίσκεται μέσα στο σχέδιο παροχής ενέργειας , στη συνήθη διαδρομή: Ρυθμίσεις → Σύστημα → Παροχή ενέργειας και αναστολή λειτουργίας → Πρόσθετες ρυθμίσεις παροχής ενέργειας → Αλλαγή ρυθμίσεων σχεδίου → Αλλαγή ρυθμίσεων παροχής ενέργειας για προχωρημένους. Στις επιλογές για προχωρημένους, στην ενότητα "PCI Express", θα βρείτε τη ρύθμιση "Διαχείριση ενέργειας κατάστασης σύνδεσης".
Τα Windows συνήθως προσφέρουν τρία επίπεδα συμπεριφοράς για τη Διαχείριση ενέργειας κατάστασης σύνδεσης , τα οποία αντιστοιχούν εννοιολογικά σε διαφορετικούς βαθμούς εξοικονόμησης ενέργειας και καθυστέρησης:
- ΑπενεργοποιημένοΗ σύνδεση PCIe δεν μεταβαίνει σε καταστάσεις εξοικονόμησης ενέργειας. Η απόδοση και η χαμηλή καθυστέρηση έχουν προτεραιότητα.
- Μέτρια εξοικονόμηση ενέργειαςΤο σύστημα εφαρμόζει ένα ενδιάμεσο επίπεδο εξοικονόμησης ενέργειας. Η κατανάλωση μειώνεται κάπως, αλλά ο χρόνος ανάκαμψης από την κατάσταση χαμηλής κατανάλωσης είναι σχετικά γρήγορος.
- Μέγιστη εξοικονόμηση ενέργειαςΗ σύνδεση απενεργοποιείται δυναμικά όταν δεν υπάρχει κίνηση. Η κατανάλωση μειώνεται περαιτέρω, αλλά ο χρόνος αφύπνισης από την κατάσταση χαμηλής ισχύος είναι μεγαλύτερος.
Σε έναν φορητό υπολογιστή, η επιλογή μεταξύ μέτριων και μέγιστων ρυθμίσεων μπορεί να κάνει σημαντική διαφορά στη διάρκεια ζωής της μπαταρίας , ειδικά εάν η συσκευή αφιερώνει πολύ χρόνο σε ελαφριές εργασίες, όπως περιήγηση ή παρακολούθηση βίντεο. Σε έναν επιτραπέζιο υπολογιστή ή υπολογιστή παιχνιδιών, πολλοί χρήστες επιλέγουν να την αφήσουν απενεργοποιημένη για να αποφύγουν τυχόν επιπλέον καθυστέρηση και να μεγιστοποιήσουν κάθε FPS.
Πώς επηρεάζει το ASPM την απόδοση και τη διάρκεια ζωής της μπαταρίας η απόδοση του συστήματος και η διάρκεια ζωής της μπαταρίας;
Η πιο προφανής επίδραση του ASPM παρατηρείται σε δύο μέτωπα: την απόδοση (καθυστέρηση) και την κατανάλωση ενέργειας . Αυτές είναι οι δύο όψεις του ίδιου νομίσματος και το να παίζεις με τις ρυθμίσεις σημαίνει να δίνεις προτεραιότητα στη μία ή στην άλλη.
Όταν το ASPM είναι ενεργοποιημένο και σε επιθετικές λειτουργίες, το σύστημα μειώνει την κατανάλωση ενέργειας στις συνδέσεις PCIe, εφόσον δεν μεταφέρουν ενεργά δεδομένα. Αυτό είναι ιδιαίτερα αισθητό σε:
- Φορητοί υπολογιστές, τα οποία εξαρτώνται από την ισχύ της μπαταρίας και εκτιμούν κάθε watt που εξοικονομείται.
- Συστήματα με πολλές συσκευές PCIe (κάρτες γραφικών, κάρτες δικτύου, ελεγκτές αποθήκευσης κ.λπ.), όπου η συνολική εξοικονόμηση μπορεί να είναι σημαντική.
- Περιβάλλοντα κέντρων δεδομένων και διακομιστών με υψηλή πυκνότηταόπου μερικά watt ανά διακομιστή κλιμακώνονται σε μεγάλα νούμερα σε επίπεδο rack ή κέντρου δεδομένων.
Το αντιστάθμισμα είναι η καθυστέρηση που εισάγεται κατά τη μετάβαση από μια κατάσταση χαμηλής κατανάλωσης ενέργειας σε μια ενεργή κατάσταση . Σε γενική χρήση (εφαρμογές γραφείου, περιήγηση, αναπαραγωγή πολυμέσων), αυτή η καθυστέρηση είναι συνήθως ανεπαίσθητη στον χρήστη. Ωστόσο, σε απαιτητικά σενάρια - παιχνίδια, χαμηλή καθυστέρηση δικτύου, έντονο φόρτο αποθήκευσης - μπορεί να έχει μια οριακή, αν και συνήθως μικρή, επίδραση.
Ορισμένες αναλύσεις και μελέτες έχουν αναφέρει βελτιώσεις στην ενεργειακή απόδοση και τη χρήση του διαύλου PCIe έως και 20% με σωστή διαχείριση ASPM . Αυτό δεν σημαίνει ότι ο υπολογιστής σας θα λειτουργεί 20% πιο γρήγορα, αλλά μάλλον ότι μπορεί να καταναλώνει λιγότερη ενέργεια και να παράγει λιγότερη θερμότητα για τον ίδιο φόρτο εργασίας, κάτι που είναι ιδιαίτερα ωφέλιμο για φορητούς υπολογιστές και κινητές συσκευές.
Στα Windows, είναι σύνηθες για εργαλεία όπως powercfg -energy εμφάνιση σφαλμάτων που σχετίζονται με το ASPM του τύπου: «Η Διαχείριση ενέργειας ενεργής κατάστασης PCI Express (ASPM) απενεργοποιήθηκε λόγω γνωστής ασυμβατότητας με το υλικό αυτού του υπολογιστή». Σε αυτές τις περιπτώσεις, τα Windows έχουν αποφασίσει να αποκλείσουν το ASPM για λόγους ασφαλείας, επειδή γνωρίζουν ότι ένα συγκεκριμένο στοιχείο δεν το χειρίζεται καλά και θα μπορούσε να προκαλέσει διακοπές λειτουργίας, αποσυνδέσεις συσκευών ή αστάθεια.
Τυπικά προβλήματα: Σφάλματα ASPM, μπαταρίες και συμβατότητα υλικού
Πολλοί χρήστες συναντούν για πρώτη φορά το ASPM όταν διερευνούν προβλήματα μπαταρίας ή διαγνωστικά τροφοδοσίας , ειδικά σε ισχυρούς φορητούς υπολογιστές με σύγχρονες CPU και αποκλειστικές GPU (π.χ. συστήματα Intel Core i9 12ης γενιάς και γραφικά RTX υψηλής τεχνολογίας).
Ένα τυπικό παράδειγμα είναι ένα νέο φορητό υπολογιστή του οποίου η μπαταρία διαρκεί πολύ λιγότερο από το αναμενόμενο. (2-2,5 ώρες σε ελαφριά χρήση σε σύγκριση με τις 5-6 ώρες που αναφέρουν άλλοι χρήστες). Κατά τη δημιουργία αναφοράς με powercfg -energy Στα Windows, εμφανίζονται σφάλματα όπως τα ακόλουθα:
- «Δυνατότητες διαχείρισης ενέργειας πλατφόρμας: Η Διαχείριση ενέργειας ενεργής κατάστασης PCI Express (ASPM) είναι απενεργοποιημένη. Η ASPM έχει απενεργοποιηθεί λόγω γνωστής ασυμβατότητας με το υλικό αυτού του υπολογιστή.»
- Προειδοποιήσεις σχετικά με Συσκευές USB που δεν εισέρχονται σε επιλεκτική αναστολή (για παράδειγμα, συσκευές με συγκεκριμένα αναγνωριστικά USB), γεγονός που αυξάνει επίσης την κατανάλωση ενέργειας σε κατάσταση αναμονής.
Σε αυτές τις περιπτώσεις, δεν φταίει πάντα ο επεξεργαστής . Συχνά πρόκειται για έναν συνδυασμό:
- Σχεδιασμός εξοπλισμού (μητρική πλακέτα, BIOS/UEFI, πώς ο κατασκευαστής υλοποιεί πίνακες ACPI και υποστήριξη ASPM).
- Προγράμματα οδήγησης συσκευών (GPU, NIC, αποθηκευτικός χώρος, USB) που δεν εφαρμόζουν πλήρως ή σωστά το ASPM.
- Εξωτερικές συσκευές USB που εμποδίζουν την επιλεκτική ανάρτηση ή διατηρούν το σύστημα πιο ενεργό από το επιθυμητό.
Στην πράξη, όταν τα Windows αναφέρουν ότι το ASPM είναι απενεργοποιημένο λόγω ασυμβατότητας , η επανενεργοποίησή του χωρίς κίνδυνο σπάνια είναι μια απλή επιλογή. Η επιβολή του μέσω hacking ή τροποποιημένων προγραμμάτων οδήγησης μπορεί να προκαλέσει, για παράδειγμα, μια κάρτα δικτύου να μην ανταποκρίνεται μέχρι την επανεκκίνηση.
Για να αποκλειστούν προβλήματα που αφορούν αποκλειστικά το λογισμικό στα Windows, συνήθως συνιστώνται ορισμένα βασικά βήματα.Εκτελέστε το εργαλείο αντιμετώπισης προβλημάτων τροφοδοσίας, Ενημέρωση των Windows και των προγραμμάτων οδήγησηςκαι σε ορισμένες περιπτώσεις να εκτελούν ελέγχους αρχείων συστήματος με SFC (sfc /scannow) και βοηθητικά προγράμματα DISM (DISM.exe /Online /Cleanup-image /Scanhealth y /RestorehealthΕάν μετά από όλα αυτά η αναφορά εξακολουθεί να εμφανίζει το ASPM απενεργοποιημένο από το υλικό, πιθανότατα πρόκειται για περιορισμό του ίδιου του εξοπλισμού ή του υλικολογισμικού του.
ASPM σε διακομιστές και εξοπλισμό 24/7: Αξίζει τον κόπο;

Στον κόσμο των διακομιστών που λειτουργούν 24/7, το ASPM προκαλεί σημαντική συζήτηση . Από τη μία πλευρά, η εξοικονόμηση ενέργειας στις συνδέσεις PCIe φαίνεται καλή ιδέα. Από την άλλη, οποιαδήποτε υπόνοια αστάθειας ή απώλειας πακέτων είναι απαράδεκτη.
Ένα κλασικό παράδειγμα είναι αυτό ορισμένων καρτών δικτύου Intel (όπως η 82574L) οι οποίες έχουν ένα καλά τεκμηριωμένο ελάττωμα υλικού: υπό ορισμένες συνθήκες, η μετάδοση πακέτων σταματά και συνεχίζεται μόνο μετά από επανεκκίνηση. Ένας τρόπος για να μετριαστεί αυτό το πρόβλημα ήταν η απενεργοποίηση του ASPM για αυτήν τη συσκευή ή ακόμα και παγκοσμίως.
Στο Linux, υπάρχουν διάφοροι τρόποι για να χειριστεί κανείς αυτές τις περιπτώσεις σε έναν διακομιστή :
- Απενεργοποίηση ASPM καθολικά με την παράμετρο εκκίνησης πυρήνα
pcie_aspm=offΕίναι η πιο αποτελεσματική λύση, που ισχύει για όλες τις συσκευές, με κόστος την πλήρη εγκατάλειψη αυτής της εξοικονόμησης ενέργειας. - Χρησιμοποιήστε ένα ενημερωμένο πρόγραμμα οδήγησης (για παράδειγμα, μια τροποποιημένη έκδοση του
e1000e(για κάρτες δικτύου Intel) που απενεργοποιεί το ASPM ή αγνοεί ορισμένες προβληματικές καταστάσεις μόνο για την επηρεαζόμενη συσκευή. - Τροποποίηση των bit ASPM μιας συγκεκριμένης συσκευής με εργαλεία όπως
setpci, προσαρμόζοντας τη συμπεριφορά κατά το χρόνο εκτέλεσης χωρίς να επηρεάζεται το υπόλοιπο σύστημα (αν και οι αλλαγές συνήθως χάνονται μετά από μια επανεκκίνηση εάν δεν είναι αυτοματοποιημένες).
Το βασικό ερώτημα για έναν διακομιστή είναι εάν η εξοικονόμηση ενέργειας του ASPM υπερτερεί του κινδύνου και της πολυπλοκότητας . Σε πολλά κρίσιμα περιβάλλοντα παραγωγής, η σταθερότητα και η προβλεψιμότητα είναι υψίστης σημασίας. Γι' αυτό είναι σύνηθες να βλέπουμε το ASPM απενεργοποιημένο στο BIOS ή στον πυρήνα σε μηχανήματα που χρησιμοποιούνται για βάσεις δεδομένων, εντατική εικονικοποίηση ή υπηρεσίες δικτύου που δεν μπορούν να αντέξουν οικονομικά τον χρόνο διακοπής λειτουργίας.
Ωστόσο, το ASPM μπορεί επίσης να εφαρμοστεί σε άλλες συσκευές διακομιστή , όπως κάρτες PCIe RAID ή ελεγκτές NVMe. Εάν το υλικολογισμικό και τα προγράμματα οδήγησης είναι καλά σχεδιασμένα, η εξοικονόμηση ενέργειας μπορεί ενδεχομένως να επιτευχθεί χωρίς να επηρεαστεί η διαθεσιμότητα, αν και το πραγματικό όφελος εξαρτάται σε μεγάλο βαθμό από το εάν αυτές οι συσκευές έχουν σημαντικές περιόδους αδράνειας ή βρίσκονται υπό συνεχή φόρτο.
ASPM, ACPI και οι διαφορετικές ενεργειακές καταστάσεις του συστήματος
Για να κατανοήσουμε πού εντάσσεται το ASPM στον "χάρτη" διαχείρισης ενέργειας, πρέπει να μιλήσουμε για το ACPI (Advanced Configuration and Power Interface). Το ACPI είναι το πρότυπο που αντικατέστησε το παλαιότερο APM και καθορίζει τον τρόπο με τον οποίο επικοινωνούν το υλικολογισμικό (BIOS/UEFI) και το λειτουργικό σύστημα για τη διαχείριση της ενέργειας, των διακοπών, των καταστάσεων αναστολής λειτουργίας, της εκχώρησης IRQ και πολλών άλλων.
Το ACPI είναι ένα βασικό στοιχείο σχεδόν σε όλο το σύγχρονο υλικό, όχι μόνο στο x86 . Προήλθε από την Intel, τη Microsoft και την Toshiba τη δεκαετία του 90, αλλά με την πάροδο των ετών έχει εξαπλωθεί και σε αρχιτεκτονικές όπως η ARM, ειδικά στους τομείς των διακομιστών και του HPC, όπου πολλά στοιχεία από το οικοσύστημα x86 (UEFI, GPU, κ.λπ.) επαναχρησιμοποιούνται.
Παρά το γεγονός ότι είναι ένα ευρέως υιοθετημένο πρότυπο, το ACPI έχει δεχθεί πολλές επικρίσεις . Εξέχουσες φωνές του κλάδου, όπως ο ιδρυτής της Canonical, Mark Shuttleworth, έχουν επισημάνει ότι το κλειστό υλικολογισμικό (συμπεριλαμβανομένων των υλοποιήσεων ACPI) αποτελεί ιδανικό φορέα για τρωτά σημεία ασφαλείας και πιθανά backdoors. Έχουν επίσης αποκαλυφθεί περιπτώσεις όπου κατασκευαστές όπως η Lenovo και η Samsung χρησιμοποιούν ορισμένους πίνακες ACPI των Windows (για παράδειγμα, τον πίνακα WPBT) για να εγκαταστήσουν αμφίβολο λογισμικό ή, θεωρητικά, θα μπορούσαν να διευκολύνουν την εγκατάσταση επίμονων rootkits.
Μέσα στο σύμπαν του ACPI, βρίσκουμε διάφορους τύπους καταστάσεων ισχύος που επηρεάζουν ολόκληρο το σύστημα, συγκεκριμένες συσκευές και τον επεξεργαστή. Το ASPM σχετίζεται κυρίως με το στοιχείο σύνδεσης PCIe, αλλά συνυπάρχει με όλα αυτά τα επίπεδα:
Παγκόσμιες Καταστάσεις του Συστήματος (Κρατίες G)
Οι παγκόσμιες καταστάσεις ορίζουν το επίπεδο δραστηριότητας της ομάδας στο σύνολό της και αντιπροσωπεύονται από συνδυασμούς Gx/Sx:
- G0/S0Το σύστημα λειτουργεί κανονικά.
- G1 (λειτουργίες αναστολής), η οποία με τη σειρά της χωρίζεται σε:
- G1/S1Ελαφριά ανάρτηση. Η CPU και οι μνήμες cache παραμένουν ενεργές.
- G1/S2Η CPU τερματίζεται και τα δεδομένα χάνονται στα μητρώα της, αλλά ένα μέρος του συστήματος παραμένει ενεργοποιημένο.
- G1/S3: «αναστολή στη μνήμη RAM»; το σύστημα φαίνεται να είναι απενεργοποιημένο, αλλά η μνήμη RAM συνεχίζει να τροφοδοτείται για να διατηρήσει την κατάσταση.
- G1/S4: αδρανοποίηση; τα περιεχόμενα της μνήμης RAM μεταφέρονται στον χώρο αποθήκευσης και η μνήμη RAM μπορεί να απενεργοποιηθεί.
- G2/S5: ομαλή απενεργοποίηση. Το σύστημα είναι απενεργοποιημένο, αλλά υπάρχει ελάχιστη ισχύς για να επιτραπεί η ενεργοποίησή του λόγω συμβάντος (πληκτρολόγιο, δίκτυο κ.λπ.).
- G3: πλήρης διακοπή λειτουργίας· δεν υπάρχει παροχή ρεύματος εκτός από ελάχιστα εξαρτήματα όπως το ρολόι πραγματικού χρόνου που τροφοδοτείται από μπαταρία.
Το ASPM τίθεται σε λειτουργία κυρίως όταν βρισκόμαστε σε κατάσταση G0/S0 , δηλαδή με το σύστημα ενεργοποιημένο και λειτουργικό. Αυτό συμβαίνει όταν οι σύνδεσμοι PCIe μπορούν να μεταβούν από ενεργές καταστάσεις σε καταστάσεις χαμηλής κατανάλωσης ενέργειας χωρίς το σύστημα να μεταβεί σε πλήρη αναστολή λειτουργίας.
Καταστάσεις συσκευής (καταστάσεις D) και καταστάσεις επεξεργαστή (καταστάσεις C)
Εκτός από τις καθολικές καταστάσεις, το ACPI ορίζει ενεργειακές καταστάσεις σε επίπεδο συσκευής , που ονομάζονται καταστάσεις D:
- D0: η συσκευή είναι ενεργοποιημένη και λειτουργεί 100%.
- D1 και D2: ενδιάμεσες καταστάσεις που ποικίλλουν ανάλογα με τη συσκευή· εξοικονομούν ενέργεια αλλά διατηρούν κάποια απόκριση.
- D3: χωρίζεται σε «ζεστό» και «κρύο», ανάλογα με το αν διατηρεί ή όχι βοηθητική ισχύ· μπορεί να σταματήσει να ανταποκρίνεται εντελώς στον δίαυλο.
Παράλληλα, οι επεξεργαστές έχουν τις δικές τους καταστάσεις C , οι οποίες ελέγχουν πόσο «χαλαρώνει» η CPU όταν δεν υπάρχει καμία δουλειά να κάνει. Μερικές από τις πιο σχετικές είναι:
- C0: ο πυρήνας εκτελεί ενεργά κώδικα.
- C1/C1E: κατάσταση «διακοπής». Ο πυρήνας δεν εκτελεί εντολές αλλά μπορεί να επιστρέψει στην κατάσταση C0 σχεδόν ακαριαία. Η παραλλαγή C1E προσθέτει περαιτέρω βελτιώσεις εξοικονόμησης ενέργειας.
- C2: «χρονόμετρο διακοπής»; το βασικό ρολόι είναι σταματημένο, χρειάζεται λίγο περισσότερος χρόνος για να επιστρέψει στο C0.
- C3 και βαθύτερες καταστάσεις (C4-C10 στις σύγχρονες CPU): οι κρυφές μνήμες αδειάζουν, τα εσωτερικά ρολόγια απενεργοποιούνται και σε ορισμένες περιπτώσεις ο πυρήνας απενεργοποιείται ακόμη και, διατηρώντας την κατάστασή του σε αποκλειστικές μνήμες (για παράδειγμα, το C6 αποθηκεύει την κατάσταση σε SRAM με τον πυρήνα στα 0 V).
Οι μεταβάσεις μεταξύ αυτών των καταστάσεων ενεργοποιούνται από προνομιακές εντολές όπως HLT ή MWAIT , τις οποίες διαχειρίζεται το λειτουργικό σύστημα και οι ελεγκτές ισχύος. Μια διακοπή υλικού προκαλεί την άμεση μετάβαση του πυρήνα στο C0 για να την χειριστεί, και ορισμένοι σύγχρονοι επεξεργαστές ανακατευθύνουν ακόμη και τις διακοπές σε ήδη ενεργούς πυρήνες για να αποφύγουν την άσκοπη αφύπνιση άλλων αδρανών πυρήνων.
Καταστάσεις απόδοσης επεξεργαστή (Καταστάσεις P)
Οι καταστάσεις P εστιάζουν στην απόδοση του πυρήνα της CPU . Επιτρέπουν τη δυναμική ρύθμιση της συχνότητας και της τάσης του επεξεργαστή, εξοικονομώντας ενέργεια όταν δεν απαιτείται μέγιστη ισχύς και αυξάνοντας τις ταχύτητες ρολογιού όταν είναι απαραίτητο.
Οι καταστάσεις P συνήθως αναπαρίστανται ως P0, P1, P2, ... όπου P0 είναι η κατάσταση μέγιστης συχνότητας και τάσης και οι επόμενες καταστάσεις αντιπροσωπεύουν χαμηλότερη συχνότητα και κατανάλωση ενέργειας. Τεχνολογίες όπως οι λειτουργίες Intel SpeedStep, AMD PowerNow!, PowerSaver και Turbo της VIA βασίζονται σε αυτές τις καταστάσεις για την κλιμάκωση της συχνότητας με βάση το φορτίο και τους περιορισμούς όπως το TDP (PL1, PL2, κ.λπ.).
Στο Linux, αυτοί οι μηχανισμοί ελέγχονται από υποσυστήματα όπως cpufreq y cpuidleΕίναι δυνατό να ελέγξετε τον ενεργό ρυθμιστή συχνότητας με εντολές όπως cpupower frequency-info ή την αναθεώρηση αρχείων σε /sys/devices/system/cpu/cpu*/cpufreq/, όπου εμφανίζονται πληροφορίες όπως η τρέχουσα συχνότητα, οι μέγιστες και ελάχιστες συχνότητες και οι διαθέσιμοι ρυθμιστές στροφών (απόδοση, εξοικονόμηση ενέργειας, κατα παραγγελια, συντηρητικόςκ.λπ.) και ο οδηγός που χρησιμοποιείται.
Παρόλο που όλα αυτά μπορεί να φαίνονται άσχετα με το ASPM, στην πραγματικότητα αποτελούν μέρος του ίδιου οικοσυστήματος ACPI : διαφορετικά επίπεδα και μηχανισμοί που συνεργάζονται για να προσαρμόσουν την κατανάλωση ενέργειας και την απόδοση των CPU, των συσκευών και των συνδέσεων συστήματος, συμπεριλαμβανομένου του PCIe.
Πρακτική εφαρμογή του ASPM: BIOS/UEFI, λειτουργικό σύστημα και προγράμματα οδήγησης
Για να λειτουργήσει σωστά το ASPM, απαιτείται η συνεργασία τριών κύριων παραγόντων : του υλικολογισμικού της μητρικής πλακέτας (BIOS/UEFI), του λειτουργικού συστήματος και των προγραμμάτων οδήγησης συσκευών PCIe.
Το BIOS/UEFI συνήθως περιλαμβάνει συγκεκριμένες επιλογές ASPM ή Link State Power Management που σας επιτρέπουν να ενεργοποιήσετε, να απενεργοποιήσετε ή να επιλέξετε συγκεκριμένες λειτουργίες (π.χ., L0s, L1, Auto, Off). Είναι σημαντικό το υλικολογισμικό να εφαρμόζει σωστά τους πίνακες ACPI και να περιγράφει με ακρίβεια τι υποστηρίζει κάθε συσκευή και σύνδεσμος PCIe.
Το λειτουργικό σύστημα (Windows, Linux, κ.λπ.) διαβάζει αυτές τις πληροφορίες από το ACPI και αποφασίζει ποιες πολιτικές θα εφαρμόσει.Στο Linux, όπως αναφέρθηκε, το ASPM μπορεί να επιβληθεί ή να απενεργοποιηθεί χρησιμοποιώντας παραμέτρους πυρήνα ή μέσω του αρχείου πολιτικής της ενότητας. pcie_aspmΣτα Windows, η διαχείριση περιλαμβάνεται στο σχέδιο παροχής ενέργειας και στις επιλογές «PCI Express → Διαχείριση ενέργειας κατάστασης σύνδεσης».
Τα προγράμματα οδήγησης συσκευών PCIe παίζουν επίσης κρίσιμο ρόλο . Για να επωφεληθούν από το ASPM χωρίς προβλήματα, πρέπει:
- Δηλώστε σωστά τις δυνατότητες εξοικονόμησης ενέργειας της συσκευής (ποιες δηλώσεις υποστηρίζει, ποιες καθυστερήσεις είναι αποδεκτές, κ.λπ.).
- Διαχειριστείτε σωστά τις μεταβάσεις κατάστασηςαποτρέποντας το "πάγωμα" της συσκευής ή την καθυστέρηση στην απόκριση όταν εξέρχεται από κατάσταση χαμηλής κατανάλωσης ενέργειας.
- Παραμένοντας ενημερωμένοιΑυτό συμβαίνει επειδή πολλοί κατασκευαστές διορθώνουν σφάλματα ASPM και βελτιστοποιούν την κατανάλωση μέσω ενημερώσεων προγραμμάτων οδήγησης ή υλικολογισμικού.
Σε ορισμένες περιπτώσεις, οι κατασκευαστές έχουν κυκλοφορήσει τροποποιημένα προγράμματα οδήγησης για να απενεργοποιήσουν το ASPM σε προβληματικά μοντέλα.θεωρώντας το μια ρεαλιστική «λύση» για σφάλματα υλικού. Αυτή είναι η περίπτωση με ορισμένες κάρτες δικτύου Intel σε Linux, όπου οι ενημερωμένες εκδόσεις του e1000e Το ASPM είναι απενεργοποιημένο για να αποφευχθεί το πρόβλημα απώλειας μετάδοσης.
Για τους τελικούς χρήστες, η γενική σύσταση είναι να μην επιβάλλουν χειροκίνητα το ASPM στο BIOS ή στο λειτουργικό σύστημα, εκτός εάν έχετε καλή κατανόηση του υλικού ή υπάρχουν σαφείς οδηγίες από τον κατασκευαστή. Εάν μια αναφορά των Windows αναφέρει ότι το ASPM έχει απενεργοποιηθεί λόγω ασυμβατότητας, αυτό σημαίνει ότι το λειτουργικό σύστημα έχει ήδη διαπιστώσει ότι ο κίνδυνος υπερτερεί του οφέλους.
Το ASPM είναι ένα ακόμη κομμάτι του σύγχρονου παζλ διαχείρισης ενέργειας , που συνδέεται στενά με το ACPI, τις καθολικές καταστάσεις ενέργειας, τις καταστάσεις ενέργειας της συσκευής και τις καταστάσεις ενέργειας της CPU. Όταν εφαρμόζεται σωστά, βοηθά στη μείωση της κατανάλωσης ενέργειας και της υπερθέρμανσης χωρίς καν να το προσέξετε. Όταν εφαρμόζεται εσφαλμένα, μπορεί να προκαλέσει οτιδήποτε, από μικρά προβλήματα καθυστέρησης έως διακοπές λειτουργίας συσκευών και προβλήματα δικτύου που είναι εξαιρετικά δύσκολο να διαγνωστούν.
Η κατανόηση του τρόπου λειτουργίας και του σημείου διαμόρφωσής του σάς επιτρέπει να λαμβάνετε πιο εμπεριστατωμένες αποφάσεις : από την επιλογή της σωστής λειτουργίας "Διαχείρισης Ενέργειας Κατάστασης Σύνδεσης" στον φορητό υπολογιστή σας για εξοικονόμηση μπαταρίας, έως την απόφαση για το εάν σε έναν κρίσιμο διακομιστή αξίζει περισσότερο να θυσιάσετε μερικά watt και να απενεργοποιήσετε το ASPM με αντάλλαγμα την ακλόνητη σταθερότητα.