greekfragma Δημοσιεύτηκε Νοέμβριος 21, 2008 #1 Κοινοποίηση Δημοσιεύτηκε Νοέμβριος 21, 2008 Απλό ερώτημα που μετά από αρκετό ψάξιμο δεν έχω δει να απαντιέται κάπου με εκτενή τρόπο. Τί αντίκτυπο επιδόσεων έχουν τα νέα πακέτα εντολών σε έναν επεξεργαστή σε σχέση με τους προκατόχους τους? π.χ. SSE-SSE2-SSE3-SSE4.1/4.2/4.3 Link to comment Share on other sites More sharing options...
mech5107 Νοέμβριος 21, 2008 #2 Κοινοποίηση Νοέμβριος 21, 2008 Από την εμπειρία μου σαν απλός χρήστης (...τι είπα ρε ο π%^στ(ς...) θα έλεγα ότι για κάθε ένα-δυο νέα set εντολών, βλέπεις κάποια διάφορα στις καθημερινές εφαρμογές. Στα παιχνίδια, η διαφορά δεν είναι εύκολα αντιληπτή, γιατί κάθε νέο set πάει σε νέο πυρήνα, οπότε και η σύγκριση δεν είναι αξιόπιστη. Το όλο θέμα συνοψίζεται στο τι εφαρμογές δουλεύεις και αν αυτές έχουν υποστήριξή στις νέες εντολές. Σε bench θα γίνεται εμφανές σε σύγκριση νέων με παλιών εκδόσεων. Link to comment Share on other sites More sharing options...
Jaco Νοέμβριος 22, 2008 #3 Κοινοποίηση Νοέμβριος 22, 2008 To set εντολών αφορά κυρίως αυτούς που φτιάχνουν τους linkers, δηλαδή τα εργαλεία με τα οποία χτίζονται στην ουσία οι υπόλοιπες εφαρμογές και όσους χρησιμοποιούν assembly σε σημεία του κώδικά τους τα οποία είναι time critical ή πρέπει να επιτυγχάνουν την μέγιστη ταχύτητα εκτέλεσης...Σε κάθε ανανέωση του σετ εντολών προστίθενται κάποιες καινούργιες οι οποίες έχουν σκοπό το κερδίσουν μερικούς ή αρκετούς κύκλους του επεξεργαστή... για παράδειγμα, απλουστευμένα, όταν θέλεις να προσθέσεις δυο 64bit αριθμούς και το σετ εντολών έχει μόνο πρόσθεση για 32bit, άσχετα με το αν είναι 32 ή 64bit επεξεργαστής, τότε θα χρειαστεί πολλαπλάσιους κύκλους ώστε να κάνει την πράξη... επομένως σε ένα καινούργιο σετ εντολών που υποστηρίζεται πλέον η πρόσθεση δυο 64bit αριθμών, η πράξη αυτή θα κάνει μόνο ένα κύκλο... Στην ουσία μια εντολή ενός σετ είναι ένα τμήμα στο die από καταχωρητές και λογικές πύλες, που ότι μπαίνει στην είσοδο του κυκλώματος, βγαίνει στην έξοδο τροποποιημένο ανάλογα με την συνδεσμολογία των πυλών αυτών... για να εκτελεστεί τώρα η εντολή μπορεί να χρειάζονται περισσότεροι του ενός κύκλου ρολογιού, λόγο του ότι θα πρέπει να περάσει από πολλά στάδια... κύκλος ρολογιού είναι τα MHz δηλ του επεξεργαστή, οπότε ένας 3GHz επεξεργαστής έχει 3*10^9 κύκλους, που αλλιώς το λένε και heartbeat... οπότε καινούργιες εντολές μπορεί να κάνουν ακόμα και την ίδια λειτουργία με μια προηγούμενη, αλλά σε λιγότερους κύκλους ρολογιού...το θέμα τώρα είναι ότι για να περάσουν αυτές οι αλλαγές σε παλιά software και να κερδίσεις την ταχύτητα που σου προφσφέρουν, θα πρέπει τα εργαλεία ανάπτυξης με τα οποία φτιάχνουν τις εφαρμογές να υποστηρίζουν τις εντολές αυτές και κατά το linking να αποφασίζουν πότε να τις χρησιμοποιήσουν... αυτή η αλλαγή περνάει αργά σε χρόνο στα γνωστά frameworks προγραμματισμού, αλλά πολύ γρήγορα σε μηχανές παιχνιδιών, οι οποίες έχουν μεγάλα μέρη του κώδικά τους σε assembly ώστε να κερδίζουν όσο γίνεται περισσότερο σε ταχύτητα... φυσικά οποιοσδήποτε μπορεί να τις χρησιμοποιήσει και όταν γράφει κώδικα σε μια πιο υψηλού επιπέδου γλώσσα, αλλά γενικά είναι θέμα υποστήριξης, γι'αυτό και η Intel βγάζει σε κάθε αλλαγή και δικούς της compilers/linkers για C++ σε x86 που υποστηρίζουν τις νέες εντολές του σετ...Τι κερδίζουμε εμείς...? Στην ουσία μόνο οι εφαρμογές που είναι αποκλειστικά εξαρτώμενες από την συχνότητα ρολογιού μπορούν να ωφεληθούν, όπως επεξεργασία video, ήχου, παιχνίδια και προγράμματα που πραγματοποιούν μαθηματικές πράξεις... ότι είναι event driven δεν πέφτει στην κατηγορία αυτή... και επίσης γι' αυτό τον λόγο θα πρέπει κάποια στιγμή το φορτίο αυτό να το αναλάβει κάποιος μαθηματικός συνεπεξεργαστής, ή κάτι σαν τα cuda και το αντίστοιχο της ati, γιατί θα ελευθερώσουν τον επεξεργαστή από ανούσια χαμαλοδουλειά... η amd το πάει καλά καθώς λέει ότι είναι σκοπός της στο μέλλον, όσο για το αποτέλεσμα, θα δείξει...Εδιτ: τέτοιο post στις 2.30 το πρωί... faq... αλλά μόλις τελείωσα δουλειά από τις 6.30 που έχω σηκωθεί και είμαι στην τσίτα... Link to comment Share on other sites More sharing options...
KoMM Νοέμβριος 22, 2008 #4 Κοινοποίηση Νοέμβριος 22, 2008 To set εντολών αφορά κυρίως αυτούς που φτιάχνουν τους linkers, δηλαδή τα εργαλεία με τα οποία χτίζονται στην ουσία οι υπόλοιπες εφαρμογές και όσους χρησιμοποιούν assembly σε σημεία του κώδικά τους τα οποία είναι time critical ή πρέπει να επιτυγχάνουν την μέγιστη ταχύτητα εκτέλεσης...Σε κάθε ανανέωση του σετ εντολών προστίθενται κάποιες καινούργιες οι οποίες έχουν σκοπό το κερδίσουν μερικούς ή αρκετούς κύκλους του επεξεργαστή... για παράδειγμα, απλουστευμένα, όταν θέλεις να προσθέσεις δυο 64bit αριθμούς και το σετ εντολών έχει μόνο πρόσθεση για 32bit, άσχετα με το αν είναι 32 ή 64bit επεξεργαστής, τότε θα χρειαστεί πολλαπλάσιους κύκλους ώστε να κάνει την πράξη... επομένως σε ένα καινούργιο σετ εντολών που υποστηρίζεται πλέον η πρόσθεση δυο 64bit αριθμών, η πράξη αυτή θα κάνει μόνο ένα κύκλο... Στην ουσία μια εντολή ενός σετ είναι ένα τμήμα στο die από καταχωρητές και λογικές πύλες, που ότι μπαίνει στην είσοδο του κυκλώματος, βγαίνει στην έξοδο τροποποιημένο ανάλογα με την συνδεσμολογία των πυλών αυτών... για να εκτελεστεί τώρα η εντολή μπορεί να χρειάζονται περισσότεροι του ενός κύκλου ρολογιού, λόγο του ότι θα πρέπει να περάσει από πολλά στάδια... κύκλος ρολογιού είναι τα MHz δηλ του επεξεργαστή, οπότε ένας 3GHz επεξεργαστής έχει 3*10^9 κύκλους, που αλλιώς το λένε και heartbeat... οπότε καινούργιες εντολές μπορεί να κάνουν ακόμα και την ίδια λειτουργία με μια προηγούμενη, αλλά σε λιγότερους κύκλους ρολογιού... το θέμα τώρα είναι ότι για να περάσουν αυτές οι αλλαγές σε παλιά software και να κερδίσεις την ταχύτητα που σου προφσφέρουν, θα πρέπει τα εργαλεία ανάπτυξης με τα οποία φτιάχνουν τις εφαρμογές να υποστηρίζουν τις εντολές αυτές και κατά το linking να αποφασίζουν πότε να τις χρησιμοποιήσουν... αυτή η αλλαγή περνάει αργά σε χρόνο στα γνωστά frameworks προγραμματισμού, αλλά πολύ γρήγορα σε μηχανές παιχνιδιών, οι οποίες έχουν μεγάλα μέρη του κώδικά τους σε assembly ώστε να κερδίζουν όσο γίνεται περισσότερο σε ταχύτητα... φυσικά οποιοσδήποτε μπορεί να τις χρησιμοποιήσει και όταν γράφει κώδικα σε μια πιο υψηλού επιπέδου γλώσσα, αλλά γενικά είναι θέμα υποστήριξης, γι'αυτό και η Intel βγάζει σε κάθε αλλαγή και δικούς της compilers/linkers για C++ σε x86 που υποστηρίζουν τις νέες εντολές του σετ... Τι κερδίζουμε εμείς...? Στην ουσία μόνο οι εφαρμογές που είναι αποκλειστικά εξαρτώμενες από την συχνότητα ρολογιού μπορούν να ωφεληθούν, όπως επεξεργασία video, ήχου, παιχνίδια και προγράμματα που πραγματοποιούν μαθηματικές πράξεις... ότι είναι event driven δεν πέφτει στην κατηγορία αυτή... και επίσης γι' αυτό τον λόγο θα πρέπει κάποια στιγμή το φορτίο αυτό να το αναλάβει κάποιος μαθηματικός συνεπεξεργαστής, ή κάτι σαν τα cuda και το αντίστοιχο της ati, γιατί θα ελευθερώσουν τον επεξεργαστή από ανούσια χαμαλοδουλειά... η amd το πάει καλά καθώς λέει ότι είναι σκοπός της στο μέλλον, όσο για το αποτέλεσμα, θα δείξει... Εδιτ: τέτοιο post στις 2.30 το πρωί... faq... αλλά μόλις τελείωσα δουλειά από τις 6.30 που έχω σηκωθεί και είμαι στην τσίτα... δηλαδη; :tw: Link to comment Share on other sites More sharing options...
greekfragma Νοέμβριος 22, 2008 Author #5 Κοινοποίηση Νοέμβριος 22, 2008 Γεια σου ρε Jaco πρόεδρε.....:dance3::yes4::dance3: Link to comment Share on other sites More sharing options...
neuromancer Νοέμβριος 22, 2008 #6 Κοινοποίηση Νοέμβριος 22, 2008 Jaco for president! :clap: Link to comment Share on other sites More sharing options...
Jaco Νοέμβριος 22, 2008 #7 Κοινοποίηση Νοέμβριος 22, 2008 Ρα... παντού υπάρχουν αυτά... Εδώ τα εξηγεί πολύ καλύτερα και αναφέρει και τα cisc, misc, risc σετ εντολών... Link to comment Share on other sites More sharing options...
greekfragma Νοέμβριος 22, 2008 Author #8 Κοινοποίηση Νοέμβριος 22, 2008 την επόμενη φορά να δίνεις το λινκ εξαρχής και να αφήσεις τα βαρύγδουπα post για να σε λέμε πρόεδρο (άλλο που δεν σ αρέσει) Link to comment Share on other sites More sharing options...
Jaco Νοέμβριος 22, 2008 #9 Κοινοποίηση Νοέμβριος 22, 2008 ουρτ ρε...[κλίμα ημερών]θα σε διαγράψω από την παράταξη, αφού σε παραπέμψω στο πειθαρχικό πρώτα, αν συνεχίσεις τις μεθοδευμένες, άνανδρες και αήθης επιθέσεις στο πρόσωπό μου... η παράταξη δεν θα δεχθεί διαφωνούντες που δεν ακολουθούν την γραμμή και όποιος παρεκκλίνει θα πρέπει να είναι έτοιμος να υποστεί τις συνέπειες...[/κλίμα ημερών] Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.