Gaming και CPU Cores - Πόσοι χρειάζονται;
Gaming και πυρήνες. Πόσους είναι καλό να έχει το gaming PC μας; Σε αυτό το άρθρο κάνουμε μια σύντομη έρευνα.
Πόσοι πυρήνες χρειάζονται στο gaming; Αυτή είναι ένα διαχρονικό ερώτημα που ψάχνει πάντα απάντηση και αρκετές φορές είναι διαφορετική ανάλογα με το παιχνίδι που δοκιμάζουμε. Πλέον από τους τετραπύρηνους στην αγορά κυριαρχούν θα λέγαμε οι εξαπύρηνοι - περισσότερο απ’ ότι φαντάζεστε - και αυτό γιατί έχουν πέσει σημαντικά οι τιμές τους έναντι των τετραπύρηνων που μέχρι πρότινος αποτελούσαν το λίκνο της mainstream πλατφόρμας. Η AMD από το 2017 (1800X Review) με τη πίεση που ασκεί στην αγορά των επεξεργαστών χάρη στους Ryzen, έχει κάνει τους εξαπύρηνους αλλά και κάποιους οκταπύρηνους ‘το νέο mainstream’, αφήνοντας τους 'παλιούς' τετραπύρηνους για την entry level αγορά, πολλές φορές και με την ενσωμάτωση GPU. Πλέον για παράδειγμα δε βρίσκουμε κανέναν τετραπύρηνο με τη νεότερη Zen 2 αρχιτεκτονική στην αγορά κάτι που σημαίνει αρκετά από μόνο του και οι τιμές των εξαπύρηνων και οκταπύρηνων μοντέλων ξεκινούν από τα 200€ φτάνοντας μέχρι τα 350€. Οπότε η λογική λέει ότι για gaming πάμε στο μεγαλύτερο μοντέλο που μπορεί να αντέξει η τσέπη μας, σωστά;
Δείτε και το σχετικό βίντεο στο κανάλι μας:
Η απάντηση είναι 'περίπου', αφού στο sweet spot τόσο στη πλατφόρμας της AMD όσο και της Intel παραμένουν τα εξαπύρηνα μοντέλα και αυτό περισσότερο λόγω της απόδοσης σε σχέση με τα χρήματα που δίνει ο αγοραστής. Αλλά πριν δούμε γιατί ισχύει αυτό θα πρέπει να δούμε πως χρησιμοποιούν τα παιχνίδια το πλήθος των διαθέσιμων πυρήνων που έχουν τα PC μας. Ανάλογα με τη μηχανή γραφικών που εξετάζουμε αυτή μπορεί να δώσει workloads ποικίλου περιεχομένου σε αρκετούς πυρήνες, όμως το πόσοι εν τέλει αξιοποιούνται σε βαθμό που φαίνεται από τον task manager είναι κάτι τελείως διαφορετικό. Ένα τυπικό παιχνίδι θα χρησιμοποιήσει αρκετά έναν με δύο πυρήνες το πολύ για το AI, το Physics simulation και άλλες λειτουργίες όπως την τοποθεσία των φώτων στη σκηνή και δε θα εξαπλωθεί απαραίτητα σε όλον τον επεξεργαστή - κάτι που γίνεται περισσότερο πλέον στα πιο πρόσφατα πρότυπα DirectX 12 και Vulkan - και αυτό υπό προϋποθέσεις.
Το κομμάτι του επεξεργαστή ούτως ή άλλως καλύπτει τα συντονιστικά πράγματα του παιχνιδιού (ανάθεση των textures σε ένα αντικείμενο ή η θέση των φωτισμών στη 3D σκηνή) όπου ανάλογα με τον όγκο αυτών των πραγμάτων μπορεί να επηρεάσει σημαντικά τις επιδόσεις, κάνοντας έτσι το παιχνίδι CPU bound, που εξαρτάται δηλαδή αρκετά από τον επεξεργαστή του συστήματός μας. Οπότε μια τυπική ουρά δεδομένων σε ένα σενάριο real time rendering έχει ως εξής:
Ένα τυπικό rendering pipeline όπως το σχεδίασε το cgchannel.com. Η βασική εφαρμογή (το .exe) ενεργοποιεί και συνδέει όλα τα resources μεταξύ τους κάτι που ξεκινάει απο τον CPU.
Αυτό το κομμάτι της ανάθεσης των εργασιών είναι δουλειά του επεξεργαστή, ενώ αυτό της γεωμετρίας των αντικειμένων και του rasterization είναι εργασίες που καλύπτει η κάρτα γραφικών.
Κάποιες φορές το πρώτο κομμάτι της ουράς είναι αρκετά πιο απαιτητικό και περιλαμβάνει πολλά στοιχεία. Έτσι το παιχνίδι βασίζεται και εξαρτάται περισσότερο από τον CPU και τη ταχύτητά του (MHz) οπότε αυτομάτως θα δούμε τις επιδόσεις να επηρεάζονται.
Ο profiler της μηχανής γραφικών Unity είναι ένα εργαλείο που μας δείχνει το usage του συστήματος (CPU, Memory, Disk)
για να εντοπίσουμε προβλήματα στο project που δουλεύουμε. Η φωτό είναι παραμένη από μια αρχική έκδοση του profiler μέσα στη Unity από το 2013.
Ο αντίστοιχος profiler της Unreal μας δείχνει τον αριθμό των draw calls του επεξεργαστή στη σκηνή που εξετάζουμε.
Υψηλοί αριθμοί σε APIs όπως το DirectX 11 ίσως φέρουν αρνητικά αποτελέσματα στο τελικό framerate και εκεί είναι που βοηθούν τα νεότερα πρότυπα DirectX 12 και Vulkan.
Επιστρέφοντας στα CPU, η περίοδος που θεωρούσαμε πως οι διπύρηνοι επεξεργαστές μπορούν να αποτελέσουν μια βιώσιμη επιλογή για τον μέσο gamer έχουν περάσει ανεπιστρεπτί καθώς ένα gaming PC τρέχει αρκετά προγράμματα ταυτόχρονα πέρα από το παιχνίδι – και σε αρκετές περιπτώσεις αυτός από μόνος του δε φτάνει για τα περισσότερα παιχνίδια, παρουσιάζοντας έτσι χαμηλότερες επιδόσεις. ΟΚ, αυτό δείχνει να είναι πρόβλημα για τον διπύρηνο αλλά τι συμβαίνει όταν έχουμε τέσσερις ή οκτώ πυρήνες; Κατά πόσο βοηθάει αυτός ο αριθμός πυρήνων στο gaming;
Στην περίπτωση των Ryzen της AMD η κατάσταση είναι πιο περίπλοκη αφού κλειδώνοντας τους πυρήνες ενός μεγάλου μοντέλου για να δείξουμε τη συμπεριφορά του στο gaming, βλέπουμε πως ο αλγόριθμος του XFR λειτουργεί υποδειγματικά δίνοντας μερικά ακόμα MHz σε όλους τους πυρήνες, που με τη σειρά του μας δίνει λίγα παραπάνω FPS κατά μέσο όρο για κάθε αύξηση 50-100MHz στη συχνότητα λειτουργίας, μειώνοντας έτσι τη πιθανή διαφορά των επιδόσεων όταν πηγαίνουμε από 8 πυρήνες σε 4, με ενεργό SMT. Αυτό μας δίνει την ευκαιρία να δώσουμε ένα σημαντικό tip εάν είστε χρήστης της πλατφόρμας και θα το βρείτε στη σελίδα με τις μετρήσεις του OBS σε μεγαλύτερη ανάλυση, ωστόσο εάν θέλετε να μάθετε περισσότερα σας προτρέπουμε να συνεχίσετε το διάβασμα καθώς μπορεί να βρείτε επιπλέον ενδιαφέρονται πράγματα σε αυτό. Συνεχίζοντας στα των πυρήνων - έπειτα είναι και η ‘ένταση’ με την οποία ένα παιχνίδι χρησιμοποιεί τα διαθέσιμα threads – και εννοούμε το ποσοστό χρήσης του κάθε πυρήνα από την εκάστοτε εφαρμογή. Μπορεί δηλαδή η μηχανή γραφικών να βλέπει και να δίνει ‘δουλειά’ σε όλους τους πυρήνες του επεξεργαστή μας (8 για παράδειγμα) όμως υπάρχουν περιπτώσεις που ο καθένας απ' αυτούς δεν αξιοποιείται πλήρως, εσκεμμένα για λόγους ασφαλείας όπως για να μη ‘κρεμάσει’ κάποια σοβαρότερη διεργασία του OS. Τις διεργασίες του OS καλό είναι να τις βλέπουμε ως αυτόνομες εφαρμογές αφού και αυτές απαιτούν με παρόμοιο τρόπο πόρους από το σύστημά μας.
Ένα παράδειγμα με τον AMD Ryzen 7 1800X που έφερε στο προσκήνιο το XFR, την αυτόματη αύξηση των χρονισμών πέρα από τα όρια του boost clock σε έναν πυρήνα των Ryzen πρώτης γενιάς.
Σε αυτή τη γενιά το κλείσιμο πυρήνων ήταν δυνατό, όμως αρκετό λογισμικό δεν είχε προετοιμαστεί και δεν αξιοποιούσε σωστά το χαρακτηριστικό.
Η μεγάλη βελτίωση ήρθε με τη 2η γενιά επεξεργαστών της AMD, εκεί όπου δόθηκαν και αναλυτικές οδηγίες προς τους developers (games και άλλων εφαρμογών) για τη καλύτερη αξιοποίηση των επεξεργαστών, ενώ το XFR βοηθάει αρκετά στις gaming επιδόσεις τους συγκεκριμένους επεξεργαστές.
amd, gaming, cpu, multicore, games, cores , ryzen 7 3700x, scaling