Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Πήρατε τον 8πύρηνο σας και είδατε βελτιώσεις σε multitasking αλλά όχι και τόσο σε παιχνίδια,και έχετε ίσως παράπονο επειδή δεν χρησιμοποιούν πολλά παιχνίδια όλους τους πυρήνες του επεξεργαστή σας ?

Συναντάτε lag όταν παίζετε παιχνίδια που χρησιμοποιούν 1 ή 2 πυρήνες σε full ρυθμίσεις ?

 

Χαρείτε λοιπόν γιατί ανακάλυψα ένα κόλπο που ίσως αλλάξει τα πράγματα και για εσάς! :D

 

Καταρχάς ας σημειώσω πως έχω FX8320 8 πυρήνων,και το λειτουργικό μου είναι αγγλικά Windows 7 SP1 64bit.

 

 

Παρακάτω ακολουθεί βήμα βήμα ο οδηγός:

 

 

#1 Ανοίξτε ένα παιχνίδι να τρέχει.

 

#2 Πατήστε ALT και TAB ώστε να εμφανιστείτε στο Desktop Screen.

 

#3  Πατήστε CTRL,Shift,και Esc,για να ανοίξετε τον Task Manager.

 

#4 Μεταβείτε στο tab "Processes" και κάντε δεξί κλικ στο όνομα της διεργασίας του παιχνιδιού/

 

#5 Επιλέξτε με αριστερό κλικ το "Set Affinity"

 

#6 Στο νέο παράθυρο που θα εμφανιστεί απο-επιλέξτε όλα τα άλλα cores του CPU σας,και αφήστε τικαρισμένο αυτό που είναι αριθμημένο τελευταίο. (στη περίπτωση του FX8320,το "CPU7")

 

#7 Πατήστε ΟΚ.

 

#8 Ανοίξτε ξανά το Affinity Window,και κάντε κλικ και στο core που είναι αμέσως από πάνω. Πατήστε ΟΚ ξανά! Συνεχίστε να το κάνετε μέχρι να φτάσετε και στο CPU0,

 

#9 Αφού έχετε επιλέξει όλα τα cores,πατώντας το ΟΚ μετά από κάθε core,επιστρέψτε στο παιχνίδι. Τώρα υπάρχει η περίπτωση να χρησιμοποιεί και τα 8 cores του υπολογιστή σας! :D

 

 

 

Κρατήστε υπ' όψιν πως το κόλπο αυτό δεν λειτουργεί με όλα τα παιχνίδια. Παρακάτω υπάρχει μια λίστα με παιχνίδια όπου το δοκίμασα εγώ ο ίδιος.Αν το δοκιμάσετε,γράψτε σε αυτό το thread σε ποια παιχνίδια πιάνει και ποια όχι,ώστε να φτιάξουμε μια πιο ολοκληρωμένη λίστα,να την έχουμε σαν οδηγό για νέους χρήστες! :)

 

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

 

 

Λίστα Παιχνιδιών:

Cities XL Platinum: YES  8CORES

Serious Sam 3: YES  8CORES

TES Skyrim: NO  CRASH

TES Oblivion: YES  6CORES

  • Like 3
Δημοσ.

Είδες όντως διαφορά με αυτό; Μήπως απλώς μοιράζει το usage σε όλους τους πυρήνες όπως ήδη γίνεται by default σε αρκετά παιχνίδια;

Δημοσ.

Συγγνώμη αλλά δεν καταλαβαίνω με ποιό τρόπο μπορεί κάτι τέτοιο να βελτιώσει τις επιδόσεις. Το processor affinity καθορίζει το σε ποιόυς cores επιτρέπεται να εκτελεστεί ο κώδικας, δεν κάνει κάτι που είναι single threaded να γίνει multithreaded.

 

Δηλαδή ένα game έχει ας πούμε 2 threads που εκτελούνται μόνο στους cores 1-2. Πας και αλλάζεις το affinity και τώρα τα 2 threads έχουν μεγαλύτερη επιλογή γιατί εκτελούνται σε οποιονδήποτε core από τους 8. Ε και; Παραμένουν 2 threads.

 

Αν μη τι άλλο ο μόνος τρόπος που μπορώ να σκεφτώ ότι θα επηρρέαζε την απόδοση η αλλαγή στο affinity (πέρα από crash/bug) είναι αρνητικός: κάνοντας βόλτα το ίδιο thread σε πολλούς cores μειώνεται η απόδοση της L1 cache του καθενός.

  • Like 3
Δημοσ.

Είδες όντως διαφορά με αυτό; Μήπως απλώς μοιράζει το usage σε όλους τους πυρήνες όπως ήδη γίνεται by default σε αρκετά παιχνίδια;

Απ τα παιχνίδια που δοκίμασα μέχρι στιγμής το μόνο το οποίο έχει benchmark tool για να έκανα τεστ είναι το tomb raider,το οποίο όμως ούτως ή άλλως χρησιμοποιεί 8 πυρήνες by default,οπότε εκεί δεν θα είχε σημασία.

 

Στον task manager οι διαφορές φαίνονται στη χρήση CPU,αν και μπορούν να διαφέρουν πολύ τα αποτελέσματα από παιχνίδι σε παιχνίδι,και από τη μια κατάσταση παιχνιδιού στην άλλη.

Για παράδειγμα στο Serious Sam 3, οι πυρήνες χρησιμοποιούνται σχεδόν οι 6 κατά το ανάλογο ποσοστό &,και οι υπόλοιποι 2 ελάχιστα.

Στο Oblivion κυρίως δουλεύουν 2 cores,εκτός και αν πας κάπου με πολλούς NPCs ταυτόχρονα στην οθόνη,όπου εκεί χρησιμοποιούνται σύνολο 6 cores,αλλά και πάλι οι 2 απ αυτούς πολύ περισσότερο απ' τους υπόλοιπους.

 

 

Πέρα απ' τον task manager όμως,αισθητή διαφορά παρατήρησα μόνο στο Cities XL να πω την αλήθεια,το οποίο by defult χρησιμοποιεί 1 μόνο πυρήνα. Εκεί μπορώ να πω πως ναι,έχει όντως διαφορά. Πέραν απ το τι λέει ο task manager,την αλλαγή την αισθάνθηκα και στο gameplay,από κει που με μια μικρή πόλη lagαρε κάθε φορά που έκανα zoom in / out,τώρα με αρκετά μεγαλύτερη πόλη δεν λαγκάρει.

Δημοσ.

Μου κίνησε την περιέργεια το εύρημά σου, έκανα μια  αναζήτηση στο google και βρήκα αυτό, κάνει το ίδιο που προτείνεις.

 

Να πω επίσης ότι στο θεωρητικό κομμάτι συμφωνώ με τον Defacer, πρακτικά όμως μήπως πρόκειται για κάποιο bug; Οπωσδήποτε χρειάζεται περισσότερη έρευνα.

Δημοσ.

Μου κίνησε την περιέργεια το εύρημά σου, έκανα μια  αναζήτηση στο google και βρήκα αυτό, κάνει το ίδιο που προτείνεις.

 

Να πω επίσης ότι στο θεωρητικό κομμάτι συμφωνώ με τον Defacer, πρακτικά όμως μήπως πρόκειται για κάποιο bug; Οπωσδήποτε χρειάζεται περισσότερη έρευνα.

απ αυτόν το έμαθα και εγώ!  :P

 

Απλά το μετέφερα στα Ελληνικά. Εγώ δεν πολυδοκιμάζω διάφορα... Ίσα ίσα που είμαι και καχύποπτος να δοκιμάσω κάτι νέο. Απλά επειδή δεν παλευόταν η επίδοση στο cities με single-core performance είπα να το δοκιμάσω αυτό και πράγματι είδα αποτελέσματα. Έτσι το δαιμόνιο μυαλό μου σκέφτηκε: " και αν αυτό το fix έπιανε και σε περισσότερα παιχνίδια ?" και έτσι άρχισα να δοκιμάζω. Λόγο έλλειψης benchmark tool όμως για να έχω στοιχεία ακριβείας,βασίζομαι στην αξιοπιστία του task manager των Windows 7,και βάση αυτού έγραψα τα όποια αποτελέσματα για τα άλλα παιχνίδια.

 

απλά επειδή είδα ότι έπιασε με το cities xl είπα να το δοκιμάσω και σε περισσότερα παιχνίδια να δω αν συμβαίνει γενικότερα.  :rolleyes:

Πάντως στο Skyrim που το χρειαζόμουν περισσότερο ελέω mods,δεν πιάνει δυστυχώς και κρασάρει!  :cry:

Με τα mods που έχω περάσει στο Skyrim,το frame rate το βλέπεις να βουτά απ' τα 60+ στα ~36 ακαριαία σε random στιγμές.

Δημοσ.

Δηλαδή ένα game έχει ας πούμε 2 threads που εκτελούνται μόνο στους cores 1-2. Πας και αλλάζεις το affinity και τώρα τα 2 threads έχουν μεγαλύτερη επιλογή γιατί εκτελούνται σε οποιονδήποτε core από τους 8. Ε και; Παραμένουν 2 threads.

Το θέμα είναι ότι από προεπιλογή όλα τα προγράμματα είναι φτιαγμένα να τρέχουν στο core 0 και αν έχουν και δεύτερο Thread να τρέχει στο core 1 και ου το καθεξής,αυτό το βλέπει κανείς σε όλους τους Η/Υ όπου ο πρώτος πυρήνας πάντα είναι σε ποιο ψιλό επίπεδο από τους υπόλοιπους,με το afinity απλά δίνεις την δυνατότητα στο παιχνίδι να τρέξει μόνο του σε έναν πυρήνα που δεν τρέχει τίποτα άλλο οπότε έχεις το 100% του πυρήνα και πάει λίγο καλύτερα.

 

process explorer ,βρίσκεις το εκτελέσιμο του παιχνιδιού και κάνεις διπλό κλικ πάνω του,πας στην καρτέλα threads και εκεί μπορείς να δεις πρώτων πόσα νήματα έχει το παιχνίδι και σε πόσο % του συνόλου του επεξεργαστή τρέχει το κάθε ένα,αλλά μπορούμε να δούμε και το ideal processor που λέει στο σύστημα σε ποιον πυρήνα θέλει να τρέχει το κάθε νήμα του,μπορεί σε όλα να έχει 0 ,πρώτος πυρήνας, οπότε εσύ με το afinity τα μοιράζεις σε όλους.

Δημοσ.

Το θέμα είναι ότι από προεπιλογή όλα τα προγράμματα είναι φτιαγμένα να τρέχουν στο core 0 και αν έχουν και δεύτερο Thread να τρέχει στο core 1 και ου το καθεξής,αυτό το βλέπει κανείς σε όλους τους Η/Υ όπου ο πρώτος πυρήνας πάντα είναι σε ποιο ψιλό επίπεδο από τους υπόλοιπους

 

Αυτό δε στέκει λογικά. Αν ήταν έτσι, τότε μπορεί να έχεις στο μηχάνημά σου 700 cores και να τρέχεις 20 προγράμματα και όλα θα πήγαιναν στον core 0 ενώ οι υπόλοιποι 699 cores θα λιάζονταν. Καταλαβαίνεις ότι δεν είναι δυνατόν να γίνεται κάτι τέτοιο από προεπιλογή.

 

Το ότι αν πας να δεις utilization θα δεις μεγαλύτερο στον core 0 αυτό εξηγείται πολύ απλά από το γεγονός ότι ο scheduler του λειτουργικού βάζει πράμα πρώτα απ' όλα στον core 0 (κάπου πρέπει να το βάλει, core 0 as good as any). Το να το μοιράζει εξίσου σε όσους cores έχεις (και να πηγαίνει π.χ. ο καθένας 20% utilization) είναι αντιπαραγωγικό γιατί δεν επιτρέπει σε κανένα core να μπει σε sleep state, που είναι καλό και για την κατανάλωση ενέργειας, και για τη θερμοκρασία (η οποία έμμεσα επηρρεάζει την απόδοση) αλλά και γιατί δεν επιτρέπει στη CPU να κάνει καλό turbo (που επηρρεάζει την απόδοση άμεσα αν δε χρειάζεσαι το 100% όλων των cores).

 

Εξάλλου αυτό που θα έπρεπε να δεις για να κάνεις αυτή την υπόθεση (γιατί και πάλι δε θα μπορούσες να είσαι σίγουρος) είναι μηδέν utilization σε όλους τους cores πέραν του πρώτου.

Δημοσ.

process explorer ,βρίσκεις το εκτελέσιμο του παιχνιδιού και κάνεις διπλό κλικ πάνω του,πας στην καρτέλα threads και εκεί μπορείς να δεις πρώτων πόσα νήματα έχει το παιχνίδι και σε πόσο % του συνόλου του επεξεργαστή τρέχει το κάθε ένα,αλλά μπορούμε να δούμε και το ideal processor που λέει στο σύστημα σε ποιον πυρήνα θέλει να τρέχει το κάθε νήμα του,μπορεί σε όλα να έχει 0 ,πρώτος πυρήνας, οπότε εσύ με το afinity τα μοιράζεις σε όλους.

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

 

Αν βάλει όλα τα νήματα ενός παιχνιδιού στο 0 για να κοιμούνται οι υπόλοιποι, εσύ με το afinity του λες να τα τρέξει σε διαφορετικούς πυρήνες και έτσι έχεις καλύτερη ταχύτητα.

 

Μηδέν utilization σε όλους τους cores πέραν του πρώτου θα έβλεπες αν δεν έκαμνε δουλειά ο scheduler και αν δεν γινόταν αυτό «τα προγράμματα είναι φτιαγμένα να τρέχουν στο core 0 και αν έχουν και δεύτερο Thread να τρέχει στο core 1 και ου το καθεξής» 

 

Το θέμα είναι ότι ο scheduler μπορεί να βάλει το κεντρικό νήμα ενός παιχνιδιού να τρέχει στο core 0 που τρέχει ήδη αρκετά άλλα πράγματα.

Δημοσ.

εγώ πάντως εχω πρόβλημα σε παλιά παιχνίδια που βλέπουν 1core.

 

ειδικά στο command end conquer generals & timberium wars που βλέπουν ένα core, όταν βάζω μεγάλες πιστεσ με πολλές ομάδες σέρνεται το σύμπαν !

 

κ βλέπω τον 8350 που εχω να έχει έναν πυρήνα στο 100% και οι άλλοι να κάθονται κ να το ξύνουν !

κ προσπαθώ να βρω πωσ θα κάνω τέτοια παιχνίδια να δουλεύουν τουλάχιστον με 2 πυρήνες !

Δημοσ.

Απαντάς στον εαυτό σου; Ούτε τι είχες γράψει δεν θυμάσαι;

 

lol. :wacko:

Κάνω παράθεση στον εαυτό μου για να τονίσω κάτι που είπα και που απαντάει εν μέρη σε αυτά που λέει/απαντάει ο defacer,τόσο παράξενο σου φαίνεται;;;; 

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...