Επεξεργαστές πολλαπλών πυρήνων: Είναι περισσότεροι πάντα καλύτεροι;

Πίνακας περιεχομένων:

Επεξεργαστές πολλαπλών πυρήνων: Είναι περισσότεροι πάντα καλύτεροι;
Επεξεργαστές πολλαπλών πυρήνων: Είναι περισσότεροι πάντα καλύτεροι;
Anonim

Η προσθήκη πολλών πυρήνων σε έναν μόνο επεξεργαστή προσφέρει σημαντικά πλεονεκτήματα χάρη στον χαρακτήρα πολλαπλών εργασιών των σύγχρονων λειτουργικών συστημάτων. Ωστόσο, για ορισμένους σκοπούς, υπάρχει ένα ανώτερο πρακτικό όριο στο πόσοι πυρήνες αποδίδουν βελτιώσεις σε σχέση με το κόστος προσθήκης τους.

Πολυπύρηνες τεχνολογικές προόδους

Image
Image

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

Όταν κυκλοφόρησαν αρχικά, οι κατασκευαστές πρόσφεραν μόνο δύο πυρήνες σε μία μόνο CPU, αλλά τώρα υπάρχουν επιλογές για τέσσερις, έξι και ακόμη και 10 ή περισσότερους. Εκτός από την προσθήκη πυρήνων, οι ταυτόχρονες τεχνολογίες πολλαπλών νημάτων -όπως το Hyper-Threading της Intel- μπορούν να διπλασιάσουν τους εικονικούς πυρήνες που βλέπει το λειτουργικό σύστημα.

Διαδικασίες και νήματα

Μια διαδικασία είναι μια συγκεκριμένη εργασία, όπως ένα πρόγραμμα, που εκτελείται σε έναν υπολογιστή. Μια διαδικασία αποτελείται από ένα ή περισσότερα νήματα.

Ένα νήμα είναι απλώς μια ενιαία ροή δεδομένων από ένα πρόγραμμα που διέρχεται από τον επεξεργαστή του υπολογιστή. Κάθε εφαρμογή δημιουργεί το δικό της ένα ή πολλά νήματα ανάλογα με τον τρόπο που εκτελείται. Χωρίς πολλαπλές εργασίες, ένας επεξεργαστής μονού πυρήνα μπορεί να χειριστεί μόνο ένα νήμα τη φορά, έτσι το σύστημα αλλάζει γρήγορα μεταξύ των νημάτων για να επεξεργαστεί τα δεδομένα με φαινομενικά ταυτόχρονο τρόπο.

Το πλεονέκτημα της ύπαρξης πολλαπλών πυρήνων είναι ότι το σύστημα μπορεί να χειριστεί περισσότερα από ένα νήμα ταυτόχρονα. Κάθε πυρήνας μπορεί να χειριστεί μια ξεχωριστή ροή δεδομένων. Αυτή η αρχιτεκτονική αυξάνει σημαντικά την απόδοση ενός συστήματος που εκτελεί ταυτόχρονες εφαρμογές. Δεδομένου ότι οι διακομιστές τείνουν να εκτελούν πολλές ταυτόχρονες εφαρμογές σε μια δεδομένη στιγμή, η τεχνολογία αναπτύχθηκε αρχικά για τον εταιρικό πελάτη - αλλά καθώς οι προσωπικοί υπολογιστές έγιναν πιο περίπλοκοι και οι πολλαπλές εργασίες αυξήθηκαν, επωφελήθηκαν και αυτοί από την ύπαρξη επιπλέον πυρήνων.

Κάθε διαδικασία, ωστόσο, διέπεται από ένα πρωτεύον νήμα που μπορεί να καταλάβει μόνο έναν πυρήνα. Έτσι, η σχετική ταχύτητα ενός προγράμματος όπως ένα παιχνίδι ή μια συσκευή απόδοσης βίντεο περιορίζεται σκληρά στην ικανότητα του πυρήνα που καταναλώνει το κύριο νήμα. Το κύριο νήμα μπορεί οπωσδήποτε να εκχωρήσει δευτερεύοντα νήματα σε άλλους πυρήνες - αλλά ένα παιχνίδι δεν γίνεται δύο φορές πιο γρήγορο όταν διπλασιάζεις τους πυρήνες. Επομένως, δεν είναι ασυνήθιστο για ένα παιχνίδι να μεγιστοποιεί πλήρως έναν πυρήνα (το κύριο νήμα), αλλά να βλέπει μόνο μερική χρήση άλλων πυρήνων για δευτερεύοντα νήματα. Κανένας διπλασιασμός πυρήνα δεν αφορά το γεγονός ότι ο κύριος πυρήνας είναι ένας περιοριστής ρυθμού για την εφαρμογή σας και οι εφαρμογές που είναι ευαίσθητες σε αυτήν την αρχιτεκτονική θα έχουν καλύτερη απόδοση από τις εφαρμογές που δεν έχουν.

Εξάρτηση λογισμικού

Αν και η ιδέα των επεξεργαστών πολλαπλών πυρήνων ακούγεται ελκυστική, υπάρχει μια σημαντική προειδοποίηση σε αυτήν την τεχνολογία. Για να απολαμβάνετε τα πραγματικά πλεονεκτήματα των πολλαπλών επεξεργαστών, το λογισμικό που εκτελείται στον υπολογιστή πρέπει να είναι γραμμένο για να υποστηρίζει τη λειτουργία πολλαπλών νημάτων. Χωρίς το λογισμικό να υποστηρίζει μια τέτοια δυνατότητα, τα νήματα θα εκτελούνται κυρίως μέσω ενός μόνο πυρήνα, υποβαθμίζοντας έτσι τη συνολική απόδοση του υπολογιστή. Σε τελική ανάλυση, εάν μπορεί να τρέξει μόνο σε έναν πυρήνα σε έναν τετραπύρηνο επεξεργαστή, μπορεί να είναι στην πραγματικότητα πιο γρήγορο να τον εκτελέσετε σε επεξεργαστή διπλού πυρήνα με υψηλότερες βασικές ταχύτητες ρολογιού.

Όλα τα κύρια τρέχοντα λειτουργικά συστήματα υποστηρίζουν τη δυνατότητα πολλαπλών νημάτων. Αλλά το multithreading πρέπει επίσης να εγγραφεί στο λογισμικό εφαρμογής. Η υποστήριξη για multithreading σε καταναλωτικό λογισμικό έχει βελτιωθεί με τα χρόνια, αλλά για πολλά απλά προγράμματα, η υποστήριξη multithreading εξακολουθεί να μην εφαρμόζεται λόγω της πολυπλοκότητας της κατασκευής λογισμικού. Για παράδειγμα, ένα πρόγραμμα αλληλογραφίας ή πρόγραμμα περιήγησης ιστού δεν είναι πιθανό να έχει τεράστια πλεονεκτήματα από το multithreading όσο ένα πρόγραμμα επεξεργασίας γραφικών ή βίντεο, όπου ο υπολογιστής επεξεργάζεται περίπλοκους υπολογισμούς.

Ένα καλό παράδειγμα για να εξηγήσετε αυτή την τάση είναι να δείτε ένα τυπικό παιχνίδι υπολογιστή. Τα περισσότερα παιχνίδια απαιτούν κάποια μορφή μηχανής απόδοσης για να εμφανίσουν τι συμβαίνει στο παιχνίδι. Επιπλέον, κάποιο είδος τεχνητής νοημοσύνης ελέγχει γεγονότα και χαρακτήρες στο παιχνίδι. Με έναν πυρήνα, και οι δύο εργασίες εκτελούνται με εναλλαγή μεταξύ τους. Αυτή η προσέγγιση δεν είναι αποτελεσματική. Εάν το σύστημα διέθετε πολλούς επεξεργαστές, η απόδοση και η τεχνητή νοημοσύνη θα μπορούσαν να εκτελούνται σε ξεχωριστό πυρήνα - μια ιδανική κατάσταση για έναν επεξεργαστή πολλαπλών πυρήνων.

Είναι 8 > 4 > 2;

Η υπέρβαση των δύο πυρήνων παρουσιάζει μικτά οφέλη, δεδομένου ότι η απάντηση για κάθε αγοραστή υπολογιστή εξαρτάται από το λογισμικό που χρησιμοποιεί συνήθως. Για παράδειγμα, πολλά κλασικά παιχνίδια εξακολουθούν να προσφέρουν μικρή διαφορά απόδοσης μεταξύ δύο και τεσσάρων πυρήνων. Ακόμη και τα σύγχρονα παιχνίδια -ορισμένα από τα οποία φέρεται ότι απαιτούν ή υποστηρίζουν οκτώ πυρήνες- ενδέχεται να μην έχουν καλύτερη απόδοση από μια μηχανή έξι πυρήνων με υψηλότερη βασική ταχύτητα ρολογιού, δεδομένου ότι η αποτελεσματικότητα του πρωτεύοντος νήματος διέπει την αποτελεσματικότητα της απόδοσης πολλαπλών νημάτων.

Από την άλλη πλευρά, ένα πρόγραμμα κωδικοποίησης βίντεο που μετακωδικοποιεί βίντεο θα έχει πιθανώς τεράστια οφέλη καθώς η απόδοση μεμονωμένων καρέ μπορεί να περάσει σε διαφορετικούς πυρήνες και στη συνέχεια να συγκεντρωθεί σε μια ενιαία ροή από το λογισμικό. Έτσι, το να έχεις οκτώ πυρήνες θα είναι ακόμη πιο ωφέλιμο από το να έχεις τέσσερις. Στην ουσία, το πρωτεύον νήμα δεν χρειάζεται συγκριτικά πλούσιους πόρους. Αντίθετα, μπορεί να εκμεταλλευτεί τη σκληρή δουλειά στα θυγατρικά νήματα που μεγιστοποιούν τους πυρήνες του επεξεργαστή.

Ταχύτητα ρολογιού

Image
Image

Γενικά, υψηλότερη ταχύτητα ρολογιού σημαίνει ταχύτερο επεξεργαστή. Οι ταχύτητες ρολογιού γίνονται πιο νεφελώδεις όταν λαμβάνετε υπόψη τις ταχύτητες σε σχέση με πολλούς πυρήνες, επειδή οι επεξεργαστές τσακίζουν πολλά νήματα δεδομένων χάρη στους επιπλέον πυρήνες, αλλά καθένας από αυτούς τους πυρήνες θα λειτουργεί σε χαμηλότερες ταχύτητες λόγω των θερμικών περιορισμών.

Για παράδειγμα, ένας επεξεργαστής διπλού πυρήνα μπορεί να υποστηρίζει βασικές ταχύτητες ρολογιού 3,5 GHz για κάθε επεξεργαστή, ενώ ένας τετραπύρηνος επεξεργαστής μπορεί να λειτουργεί μόνο στα 3,0 GHz. Κοιτάζοντας μόνο έναν πυρήνα σε καθένα από αυτά, ο επεξεργαστής διπλού πυρήνα είναι 14 τοις εκατό ταχύτερος από τον τετραπύρηνο. Έτσι, εάν έχετε ένα πρόγραμμα που είναι μόνο μονού νήματος, ο επεξεργαστής διπλού πυρήνα είναι στην πραγματικότητα πιο αποδοτικός. Και πάλι, εάν το λογισμικό σας μπορεί να χρησιμοποιήσει και τους τέσσερις επεξεργαστές, τότε ο τετραπύρηνος επεξεργαστής θα είναι στην πραγματικότητα περίπου 70 τοις εκατό ταχύτερος από αυτόν τον επεξεργαστή διπλού πυρήνα.

Συμπεράσματα

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

Δείτε τις σκέψεις μας σχετικά με το Πόσο γρήγορο υπολογιστή χρειάζομαι; για να έχετε μια καλύτερη ιδέα για τον τύπο επεξεργαστή που ταιριάζει καλύτερα στις υπολογιστικές σας ανάγκες.

Συνιστάται: