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

Σε διπλό ταμπλό η AMD με το Project SkyBridge. Ετοιμάζει επεξεργαστές x86 και ARM συμβατούς με το ίδιο socket


voltmod

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

@atheatos

 

RISC architecture (aka ARM):

http://en.wikipedia.org/wiki/RISC

http://en.wikipedia.org/wiki/ARM_architecture

 

CISC archtecture (aka x86-64):

http://en.wikipedia.org/wiki/Complex_instruction_set_computing

http://en.wikipedia.org/wiki/X86-64

 

Ας μην επεκταθούμε στην wikipedia όμως, ας δούμε απλά το όνομα κάθε αρχιτεκτονικής:

RISC = reduced instruction set computing

CISC = complex instruction set computing

Με λίγα λόγια RISC = poor man's version of CISC...

 

Με συγχωρείς πολύ λοιπόν, αλλά για όσους δεν δουλεύουν σε facebook machine*** ή σε συσκευή που το μόνο που καταφέρνει να κάνει ικανοποιητικά είναι να παίρνει τηλέφωνο και να στέλνει μυνήματα, το χ86-64 είναι μονόδρομος. Μπορεί το συγκεκριμένο Implementation της AMD να έχει ενδιαφέρον από ακαδημαϊκής απόψεως ή/και για συγκεκριμένους τύπους συσκευών, αλλά για dekstop ούτε καν... (το λέει και το ίδιο το άρθρο άλλωστε), και επίσης μην μου βάζεις στην συζήτηση desktop pc του 1992... Τα τότε συστήματα αλλά και οι απαιτήσεις των χρηστών και του software δεν είχαν καμία σχέση με τα σημερινά δεδομένα. Οι RISC επεξεργαστές είναι αξιόλογες επιλογές μόνο σε περιπτώσεις που θέλω μια cpu για να κάνει κάτι πολύ συγκεκριμένο (που αξιοποιεί πλήρως το "reduced" instruction set που έχω και δε θα ζητήσει ποτέ κάτι παραπάνω), το γενικής χρήσεως PC δεν είναι κάτι τέτοιο.

 

*** που εκεί αμφιβάλω αν θα μπορούσε να τρέξει σωστά η desktop έκδοση του firefox, εδώ κολλάει στο 1.5Ghz τετραπύρηνο ARM κινητό μου...

 

Έλεος, τι διαβάζω πάλι...

Επειδή βαριέμαι να στα γράφω, διάβασε εδώ τα προτερήματα των RISC ενάντια στους CISC:

http://cs.stanford.edu/people/eroberts/courses/soco/projects/2000-01/risc/risccisc/

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Έλεος, τι διαβάζω πάλι...

Επειδή βαριέμαι να στα γράφω, διάβασε εδώ τα προτερήματα των RISC ενάντια στους CISC:

http://cs.stanford.edu/people/eroberts/courses/soco/projects/2000-01/risc/risccisc/

 

Ακριβώς αυτό που γράφει το link που έδωσες:

------

CISC: One of the primary advantages of this system is that the compiler has to do very little work to translate a high-level language statement into assembly. Because the length of the code is relatively short, very little RAM is required to store instructions. The emphasis is put on building complex instructions directly into the hardware.

 

RISK: RISC processors only use simple instructions that can be executed within one clock cycle.

...

At first, this may seem like a much less efficient way of completing the operation. Because there are more lines of code, more RAM is needed to store the assembly level instructions. The compiler must also perform more work to convert a high-level language statement into code of this form. However, the RISC strategy also brings some very important advantages. Because each instruction requires only one clock cycle to execute, the entire program will execute in approximately the same amount of time as the multi-cycle "MULT" command.

---------

Αυτό το approximately δεν μας λέει πόσο είναι. Και πόσο αυτό αυξάνεται όταν έχουμε ένα ουσιαστικό πρόγραμμα και όχι μία απλή λειτουργία.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

erevos_csd, on 07 May 2014 - 11:43 AM, said:erevos_csd, on 07 May 2014 - 11:43 AM, said:

Έλεος, τι διαβάζω πάλι...

Επειδή βαριέμαι να στα γράφω, διάβασε εδώ τα προτερήματα των RISC ενάντια στους CISC:

http://cs.stanford.edu/people/eroberts/courses/soco/projects/2000-01/risc/risccisc/

Γι'αυτο μεχρι να φτιαξουν καποιο risc chip με τις επιδοσεις των i-core για τα laptops και τα desktop μας,η συζητησει θα παραμεινει μονο σε θεωρητικο επιπεδο!

Μεχρι τοτε,σε πρακτικο/πραγματικο επιπεδο, για τα laptops και τα desktop μας,θα συζητουμε τι cisc cpu ή apu,θελουμε να βαλουμε ή να εχει το συστημα που σκεφτομασται να αγορασουμε!

Απλα και ξεκαθαρα!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ακριβώς αυτό που γράφει το link που έδωσες:

------

CISC: One of the primary advantages of this system is that the compiler has to do very little work to translate a high-level language statement into assembly. Because the length of the code is relatively short, very little RAM is required to store instructions. The emphasis is put on building complex instructions directly into the hardware.

 

RISK: RISC processors only use simple instructions that can be executed within one clock cycle.

...

At first, this may seem like a much less efficient way of completing the operation. Because there are more lines of code, more RAM is needed to store the assembly level instructions. The compiler must also perform more work to convert a high-level language statement into code of this form. However, the RISC strategy also brings some very important advantages. Because each instruction requires only one clock cycle to execute, the entire program will execute in approximately the same amount of time as the multi-cycle "MULT" command.

---------

Αυτό το approximately δεν μας λέει πόσο είναι. Και πόσο αυτό αυξάνεται όταν έχουμε ένα ουσιαστικό πρόγραμμα και όχι μία απλή λειτουργία.

 

Επειδή δεν το καταλαβαίνεις, να στο εξηγήσω απλά:

Εκεί που σε CISC έχεις 1 (πολύπλοκη και πιο αργή) εντολή για κάποια λειτουργία, σε RISC θα έχεις 3 (απλές και γρήγορες) εντολές.

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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Γι'αυτο μεχρι να φτιαξουν καποιο risc chip με τις επιδοσεις των i-core για τα laptops και τα desktop μας,η συζητησει θα παραμεινει μονο σε θεωρητικο επιπεδο!

Μεχρι τοτε,σε πρακτικο/πραγματικο επιπεδο, για τα laptops και τα desktop μας,θα συζητουμε τι cisc cpu ή apu,θελουμε να βαλουμε ή να εχει το συστημα που σκεφτομασται να αγορασουμε!

Απλα και ξεκαθαρα!

 

Θα σου δώσω παράδειγμα σε πρακτικό/πραγματικό επίπεδο, με desktop συστήματα:

Το πρώτο μου έτος ως φοιτητής, τα περισσότερα pc στα εργαστήρια ήταν Pentium 3 400Mhz. Είχαμε και κάτι Sparc (RISC CPUs) στα 233Mhz. Τα Sparc ήταν λίγο πιο αργά, αλλά τα Pentium τρέχανε σε 70% ψηλότερα ρολόγια.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Προτινε ενα RISC soc ή cpu που θα μπορεις να βαλεις σ'ενα laptop με επιδωσεις i5 ή i7?

Ο κατασκευαστης θελει προιον,για να βαλει στα δικα του συστηματα,οχι θεωριες!

 

Οι high end arm soc,καταναλωνουν απο 2-4watt,δλδ οσο και ο atom bay trail της intel!Δλδ δεν ειναι θεμα αρχιτεκτονικής!

Και αν ηταν τοσο συμαντικη η αυτονομια σε σχεση με τη επιδοση,γιατι δεν γεμισε ο τοπος με bay trail(που ειναι μεχρι και 10φορες πιο φτηνοί ) αντι με i-core(i3,i5&i7) στα laptops???

Το πρόβλημα είναι η υποστήριξη. Άντε και βγαίνουν επεξεργαστές που χτυπάνε τους i5 και i7 (Καθόλου δύσκολο γιατι και η intel χρησιμοποιεί στοιχεία απο την RISC αρχιτεκτονική για να επιτύχει τις επιδόσεις).Τι λειτουργικό θα τρέχουν αυτά τα μηχανήματα?

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

Δεν έχει γεμίσει ο τόπος απο επεξεργαστές τις Intel στα κινητά γιατι δεν υπάρχει υποστήριξη απο λειτουργικά. Καμία σχέση με κατανάλωση και επιδόσεις. Αυτήν την στιγμή για την arm κυκλοφορούν πάνω απο δυο mobile λειτουργικά που την υποστηρίζουν ενώ για την Intel maximum 2 mobile λειτουργικά.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Επειδή δεν το καταλαβαίνεις, να στο εξηγήσω απλά:

Εκεί που σε CISC έχεις 1 (πολύπλοκη και πιο αργή) εντολή για κάποια λειτουργία, σε RISC θα έχεις 3 (απλές και γρήγορες) εντολές.

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

Αυτό που λέει και το άρθρο που έστειλες, είναι ότι το "αργό" τις πολύπλοκης εντολής είναι ελάχιστα πιο γρήγορο από το "γρήγορο" 3 εντολών.

 

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

 

Απλοϊκά και χωρίς να έχουν οι πράξεις την έννοια που έχουν τα Instructions: Aν έχω έναν επεξεργαστή ο οποίος μπορεί να κάνει 3-4 βασικά πράγματα (πρόσθεση, ανάγνωση και εγγραφή στη μνήμη και evaluation) μπορώ να κάνω τα πάντα και να τρέξω οποιοδήποτε software. Θα κάνω προσθέσεις επί προσθέσεων και θα εξομοιώσω έτσι άλλες διεργασίες όπως τον πολλαπλασμό ή την διαίρεση. Το θέμα είναι το μέχρι πιο σημείο το pile up προσθέσεων γίνεται πιο γρήγορα από το να ενσωματώσω στον επεξεργαστή μου ένα κύκλωμα που κάνει απευθείας π.χ. την διαίρεση.

 

Όταν λοιπόν έχω πολύπλοκα Instructions στην cpu μου που κάνουν έστω και ελάχιστα πιο γρήγορα μια διεργασία από ένα σύνολο απλών instructions. Τότε θα έχω πάντα μια πιο γρήγορη cpu. Και όσο πιο πολλές διεργασίες εκτελώ σε αυτήν τόσο πιο πολλές μικρές καθυστερήσεις θα μαζεύονται στην δεύτερη περίπτωση.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Καλά δεν θα απαντήσω στο Cisc vs risc γιατι και οι δυο αρχιτεκτονικες τείνουν να συγχωνευτούν . Απλά επειδή η μια απο αυτές είχε μεγαλύτερη υποστήριξη στο παρελθόν , δεν την κάνει καλυτερη της άλλης. Μια χαρά τρέχανε έν έτη 2005 τα G5 και τότε δεν υπήρχε Facebook....δεν χρειάζεται να το αποδείξω με στοχευμένα άρθρα απο Wikipedia. Τη δυνάμη ενός risc δεν θα την αναλύσω βάση της arm που μόνο αυτή ξέρετε οι περισσότεροι εδώ μέσα...

Αυτό που λέει και το άρθρο που έστειλες, είναι ότι το "αργό" τις πολύπλοκης εντολής είναι ελάχιστα πιο γρήγορο από το "γρήγορο" 3 εντολών.

 

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

Απλοϊκά και χωρίς να έχουν οι πράξεις την έννοια που έχουν τα Instructions: Aν έχω έναν επεξεργαστή ο οποίος μπορεί να κάνει 3-4 βασικά πράγματα (πρόσθεση, ανάγνωση και εγγραφή στη μνήμη και evaluation) μπορώ να κάνω τα πάντα και να τρέξω οποιοδήποτε software. Θα κάνω προσθέσεις επί προσθέσεων και θα εξομοιώσω έτσι άλλες διεργασίες όπως τον πολλαπλασμό ή την διαίρεση. Το θέμα είναι το μέχρι πιο σημείο το pile up προσθέσεων γίνεται πιο γρήγορα από το να ενσωματώσω στον επεξεργαστή μου ένα κύκλωμα που κάνει απευθείας π.χ. την διαίρεση.

Όταν λοιπόν έχω πολύπλοκα Instructions στην cpu μου που κάνουν έστω και ελάχιστα πιο γρήγορα μια διεργασία από ένα σύνολο απλών instructions. Τότε θα έχω πάντα μια πιο γρήγορη cpu. Και όσο πιο πολλές διεργασίες εκτελώ σε αυτήν τόσο πιο πολλές μικρές καθυστερήσεις θα μαζεύονται στην δεύτερη περίπτωση.

Το θέμα όπως κατάλαβες είναι το λειτουργικό. Το παρουσιασες και μόνος σου. Τώρα αναπτύσσονται 64bit λειτουργικά για ευρεία χρήση που θα εκμεταλλευτούν τις δυνατότητες ενός risc x64.
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

 

Απλοϊκά και χωρίς να έχουν οι πράξεις την έννοια που έχουν τα Instructions: Aν έχω έναν επεξεργαστή ο οποίος μπορεί να κάνει 3-4 βασικά πράγματα (πρόσθεση, ανάγνωση και εγγραφή στη μνήμη και evaluation) μπορώ να κάνω τα πάντα και να τρέξω οποιοδήποτε software. Θα κάνω προσθέσεις επί προσθέσεων και θα εξομοιώσω έτσι άλλες διεργασίες όπως τον πολλαπλασμό ή την διαίρεση. Το θέμα είναι το μέχρι πιο σημείο το pile up προσθέσεων γίνεται πιο γρήγορα από το να ενσωματώσω στον επεξεργαστή μου ένα κύκλωμα που κάνει απευθείας π.χ. την διαίρεση.

 

Έτσι και αλλιώς οι ALUs, ανεξαρτήτως αρχιτεκτονικής, το μόνο που μπορούν να κάνουν είναι πρόσθεση, αφαίρεση και συγκρίσεις (μεγαλύτερο, ίσο, μικρότερο).

Έτσι και αλλιώς οι πολλαπλασιασμοί και οι διαιρέσεις μεταφράζονται σε προσθέσεις και αφαιρέσεις.

 

Δεν πρόκειται να έχεις κανένα pile up, επειδή θα χρησιμοποιηθεί conditional jump. Επειδή βαριέμαι και δεν θυμάμαι να στο γράψω σε assembly (έχουν περάσει και κάτι χρόνια), θα στο γράψω σε java:

για να κάνεις result = x*y με προσθέσεις, αντί να έχεις

result += x;

κατεβατά για y (πχ 200) φορές, θα έχεις κάτι αντίστοιχο του

for(int i = 0; i < y; i++){

   result += x;

}

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Alchemist` , on 07 May 2014 - 12:27 PM, said:Alchemist` , on 07 May 2014 - 12:27 PM, said:Alchemist`, on 07 May 2014 - 12:27 PM, said:

Αυτό που λέει και το άρθρο που έστειλες, είναι ότι το "αργό" τις πολύπλοκης εντολής είναι ελάχιστα πιο γρήγορο από το "γρήγορο" 3 εντολών.

 

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

 

Απλοϊκά και χωρίς να έχουν οι πράξεις την έννοια που έχουν τα Instructions: Aν έχω έναν επεξεργαστή ο οποίος μπορεί να κάνει 3-4 βασικά πράγματα (πρόσθεση, ανάγνωση και εγγραφή στη μνήμη και evaluation) μπορώ να κάνω τα πάντα και να τρέξω οποιοδήποτε software. Θα κάνω προσθέσεις επί προσθέσεων και θα εξομοιώσω έτσι άλλες διεργασίες όπως τον πολλαπλασμό ή την διαίρεση. Το θέμα είναι το μέχρι πιο σημείο το pile up προσθέσεων γίνεται πιο γρήγορα από το να ενσωματώσω στον επεξεργαστή μου ένα κύκλωμα που κάνει απευθείας π.χ. την διαίρεση.

 

Όταν λοιπόν έχω πολύπλοκα Instructions στην cpu μου που κάνουν έστω και ελάχιστα πιο γρήγορα μια διεργασία από ένα σύνολο απλών instructions. Τότε θα έχω πάντα μια πιο γρήγορη cpu. Και όσο πιο πολλές διεργασίες εκτελώ σε αυτήν τόσο πιο πολλές μικρές καθυστερήσεις θα μαζεύονται στην δεύτερη περίπτωση.

Ωραια, μεχρι να τους βγαλουν να δουμε IN REAL TIME  τι "ψαρια" θα πιανουν,θα περιοριστουμε στα παραδειγματα που εχουμε.

Δλδ τους arm soc!

 

Εγω προσωπικα ειμαι ανοικτος,στο θεμα RISC σε desktop πλατφορμα.Kαι μαλιστα πιστευω οτι η πρωτη που θα κανει δυναμικη εισοδο στην risc για το desktop os της,θα ειναι παλι η apple,που θα σχεδιαζει μαλιστα και τα δικα της chip,οπως κανει και με τα ios devices !

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

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

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

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

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

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

Σύνδεση

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

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