Τι είναι το Hyperthreading και γιατί πρέπει να σε νοιάζει;

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

Είναι σαφές ότι το hyperthreading είναι καλό γιατί πρέπει να πληρώσετε επιπλέον για αυτό, αλλά τι κάνει; Το πιο σημαντικό, είναι κάτι που πρέπει να σας(you) ενδιαφέρει; Για να απαντήσουμε σε αυτές τις καίριες ερωτήσεις, πρέπει να κάνουμε μια σύντομη παράκαμψη στο πώς οι CPU(CPUs) κάνουν τη δουλειά τους.

Απεριόριστη δύναμη!

Ακόμα κι αν δεν ενδιαφέρεστε τόσο για τις λεπτές τεχνικές λεπτομέρειες της τεχνολογίας των υπολογιστών, πιθανότατα έχετε ξανακούσει για τον νόμο του Moore(Moore’s Law) . Δεν είναι πραγματικά ένας φυσικός νόμος, αλλά μια παρατήρηση ότι τα βασικά συστατικά των ολοκληρωμένων κυκλωμάτων διπλασιάζονταν σε πυκνότητα κάθε δύο περίπου χρόνια.

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

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

Το πρόβλημα είναι ότι, ανεξάρτητα από το πόσο γρήγορα λειτουργεί αυτός ο επεξεργαστής, μπορεί να κάνει μόνο ένα πράγμα τη φορά. Αυτό που αντιλαμβανόμαστε ως "multitasking" είναι στην πραγματικότητα ο επεξεργαστής που μεταπηδά γρήγορα ανάμεσα σε χιλιάδες διαφορετικές εργασίες. Πριν από μερικά χρόνια, αρχίσαμε να χτυπάμε μερικούς τοίχους από τούβλα όταν έπρεπε να κάνουμε έναν μεμονωμένο επεξεργαστή ολοένα και πιο γρήγορο.

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

Το Hyperthreading(Hyperthreading ) (HT) είναι το όνομα της Intel για την ταυτόχρονη multithreading(simultaneous multithreading) . Βασικά σημαίνει ότι ένας πυρήνας CPU μπορεί να λειτουργήσει σε δύο προβλήματα ταυτόχρονα. Δεν σημαίνει ότι η CPU μπορεί να κάνει διπλάσια δουλειά. Απλώς μπορεί να διασφαλίσει ότι χρησιμοποιείται όλη η χωρητικότητά του αντιμετωπίζοντας πολλαπλά απλούστερα προβλήματα ταυτόχρονα.

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

Ποιος πρέπει να ενδιαφέρεται για το Hyperthreading ;

Αυτή είναι μια άλλη ερώτηση που μπορεί να είναι λίγο περίπλοκη, αλλά στην πραγματικότητα είναι αρκετά απλή όταν την αναλύετε. Πρώτον(First) , ας αναφέρουμε το ένα πράγμα σχετικά με το hyperthreading που ισχύει σχεδόν πάντα. Εάν πρέπει να επιλέξετε ανάμεσα σε δύο επεξεργαστές που μπορούν να χειριστούν τον ίδιο αριθμό νημάτων, αλλά δεν έχουν τον ίδιο αριθμό πυρήνων, χρησιμοποιήστε την CPU που έχει περισσότερους φυσικούς πυρήνες.

Για παράδειγμα, εάν διαθέτετε CPU διπλού πυρήνα, υπερ-νηματοδότη και(CPU) τετραπύρηνο επεξεργαστή(CPU) χωρίς HT , η επιλογή τετραπύρηνου είναι η καλύτερη επιλογή. Δεδομένου ότι είναι κοντά το ένα στο άλλο σε απόδοση ενός νήματος, ενός πυρήνα. Γιατί; Επειδή η τετραπύρηνη CPU έχει περισσότερο υλικό φυσικής επεξεργασίας.

Το πραγματικό τουρσί έρχεται όταν έχετε δύο επεξεργαστές(CPUs) με τις ίδιες φυσικές προδιαγραφές, αλλά ο ένας έχει HT και ο άλλος όχι. Τώρα η ερώτησή μας έχει να κάνει πραγματικά με το λογισμικό που θέλετε να εκτελέσετε. Εάν διαθέτετε λογισμικό που μπορεί να δημιουργήσει αρκετά νήματα για να χρησιμοποιήσετε και τα νήματα HT, θα δείτε σημαντική ώθηση από την επιλογή της CPU με hyperthreading. Απλώς(Simply) επειδή δεν χάνεται καμία από την ικανότητα επεξεργασίας και το εξάρτημα λειτουργεί στο μέγιστο των δυνατοτήτων του όσο το δυνατόν περισσότερο χρόνο.

Εάν το λογισμικό που θέλετε να εκτελέσετε δεν δημιουργεί αρκετά νήματα για να χρησιμοποιήσετε και τους εικονικούς πυρήνες HT, δεν θα δείτε κυριολεκτικά καμία διαφορά στην απόδοση.

Παραδοσιακά, λειτουργίες όπως η απόδοση 3D της CPU(CPU 3D) , η κωδικοποίηση βίντεο και η επεξεργασία φωτογραφιών θα δημιουργήσουν τόσα νήματα όσα μπορεί να αντέξει η κακή CPU σας. Με άλλα λόγια, πολλές σύγχρονες επαγγελματικές εφαρμογές είναι πεινασμένες για νήμα. Αυτός είναι ο λόγος για τον οποίο το Hyperthreading(Hyperthreading) έχει περιοριστεί σε CPU(CPUs) επαγγελματικού επιπέδου όπως το i7 και(i7 and up) νεότερες εκδόσεις .

Οι κύριες(Mainstream) εφαρμογές, όπως οι επεξεργαστές κειμένου και τα προγράμματα περιήγησης ιστού, δεν θα έχουν καλύτερη απόδοση με το hyperthreading, ακόμα κι αν μπορούν να δημιουργήσουν περισσότερα νήματα. Απλώς(Simply) επειδή οι ανάγκες αυτών των εφαρμογών, όπως χρησιμοποιούνται από τους περισσότερους, δεν δυσκολεύουν καν τις CPU αρχικού επιπέδου.(CPUs)

Το μεγάλο ερώτημα του παιχνιδιού

Τα βιντεοπαιχνίδια(Video) είναι μια άλλη κύρια εφαρμογή που είναι αρκετά απαθής στο Hyperthreading . Τη στιγμή της γραφής, το 2019, οι πιο πρόσφατες μηχανές βιντεοπαιχνιδιών αρχίζουν να γίνονται όλο και πιο βαριές. Που σημαίνει ότι οι CPU(CPUs) με δυνατότητα HT θα έχουν καλύτερη απόδοση σε αυτές. Οι παλαιότεροι τίτλοι δεν θα δουν κανένα απολύτως πλεονέκτημα, με εξαίρεση μερικά παιχνίδια τύπου προσομοίωσης που κάνουν έντονη χρήση της τεχνητής νοημοσύνης ή άλλων διαδικασιών με επίκεντρο την CPU.

Αυτό σημαίνει ότι ο επόμενος υπολογιστής παιχνιδιών σας θα πρέπει να έχει Hyperthreading ; Το θέμα είναι ότι τώρα κινούμαστε σε μια κύρια αγορά CPU όπου οι έξι, οκτώ και δώδεκα πυρήνες CPU(CPUs) είναι ο κανόνας. Επομένως, είναι πολύ καλύτερο να έχετε περισσότερους φυσικούς πυρήνες όπου είναι δυνατόν.

Η Απλή Απάντηση

Ας ελπίσουμε ότι η παραπάνω εξήγηση ήταν αρκετά σαφής, αλλά ας την αναλύσουμε στην ουσία:

  • Εάν κάνετε επαγγελματική, βαριά εργασία, το Hyperthreading έχει σημασία
  • Εάν είστε κύριος χρήστης, μην ανησυχείτε!
  • Εάν είστε παίκτης, δώστε προτεραιότητα στο να έχετε περισσότερους πυρήνες στην επόμενη έκδοση σας σε σχέση με το HT, αλλά λάβετε επιπλέον HT εάν η τιμή είναι σωστή.

Το Hyperthreading(Hyperthreading) είναι μια εξαιρετική τεχνολογία, αλλά δεν αξίζει τον κόπο για όλους. Τώρα πρέπει να ξέρετε αν αυτός ο «κάποιος» είστε εσείς ή όχι!



About the author

Είμαι μηχανικός υλικού και προγραμματιστής λογισμικού με πάνω από 10 χρόνια εμπειρίας στις πλατφόρμες Apple και Google. Οι δεξιότητές μου έγκεινται στην ανάπτυξη αποτελεσματικών, φιλικών προς τον χρήστη λύσεων σε δύσκολα προβλήματα μηχανικής. Είχα εμπειρία με συσκευές MacOS και iOS, καθώς και με χειριστήρια πληκτρολογίου και ποντικιού. Στον ελεύθερο χρόνο μου, μου αρέσει να κολυμπάω, να παρακολουθώ τένις και να ακούω μουσική.



Related posts