ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός



Σχετικά έγγραφα
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός

ΕΠΛ221: Οργάνωση Υπολογιστών και Συµβολικός Προγραµµατισµός

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός

Οι τέσσερις αρχές για τον σχεδιασμό του συνόλου εντολών μιας μηχανής είναι:

Κεφάλαιο 1 Αφαιρετικότητα και Τεχνολογία Υπολογιστών (Computer Abstractions and Technology)

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ

Chapter 4 ( ή 1 στο βιβλίο σας)

Chapter 4 (1) Αξιολόγηση και κατανόηση της απόδοσης

Αρχιτεκτονική Υπολογιστών

Εισαγωγή στην Δομή, Οργάνωση, Λειτουργία και Αξιολόγηση Υπολογιστών

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)

Εισαγωγή Συμβόλαιο Μαθήματος

Προχωρηµένα Θέµατα Αρχιτεκτονικής

Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση. Κεφάλαιο 1. Αφηρηµένες έννοιες και τεχνολογία υπολογιστών

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I

ΕΙΣΑΓΩΓΗ στους Η/Υ. Δρ. Β Σγαρδώνη. Τμήμα Τεχνολογίας Αεροσκαφών ΤΕΙ ΣΤΕΡΕΑΣ ΕΛΛΑΔΑΣ. Χειμερινό Εξάμηνο

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης)

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Εισαγωγή στην πληροφορική

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 5

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ι. Κεφάλαιο 1 Εισαγωγή στην Δομή, Οργάνωση, Λειτουργία και Αξιολόγηση Υπολογιστών

ΜΑΘΗΜΑ 1- MULTIPLE CHOICE

Αφηρημένες έννοιες και τεχνολογία υπολογιστών

Αρχιτεκτονικές Υπολογιστών

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9

Αρχιτεκτονική Υπολογιστών

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9

Αρχιτεκτονική υπολογιστών

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

ΚΕΦΑΛΑΙΟ 1 ΥΛΙΚΟ ΥΠΟΛΟΓΙΣΤΩΝ

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

3. Προσωπικός Ηλεκτρονικός Υπολογιστής (Personal Computer - PC)

MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2

Κεφάλαιο 1 Αφαιρετικότητα και Τεχνολογία Υπολογιστών (Computer Abstractions and Technology)

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 1 ο

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)

Τεχνολογίες Κύριας Μνήμης

Κεντρική Μονάδα Επεξεργασίας

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία Διάλεξη 9

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

ΠΛΕ- 027 Μικροεπεξεργαστές

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!

ΑρχιτεκτονικήΥπολογιστών. Ι (ένα) Δημήτρης Γκιζόπουλος. Καθηγητής

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Αρχιτεκτονική Υπολογιστών

Ηλεκτρονικοί Υπολογιστές και Επεξεργασία Πληροφοριών

Οργάνωση Υπολογιστών (ΙI)

Βασίλειος Κοντογιάννης ΠΕ19

Αρχιτεκτονική Υπολογιστών Ι (ένα)

Processor-Memory (DRAM) ιαφορά επίδοσης

Αρχιτεκτονική Υπολογιστών

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΙΚΟΣ ΔΙΚΤΥΩΝ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

Ζητήµατα Απόδοσης. Ιεραρχία Μνήµης. Αναγκαιότητα για Ιεραρχία Μνήµης. Processor-DRAM Gap (latency) Ε-85: Ειδικά Θέµατα Λογισµικού

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

4/10/2008. Εισαγωγή στη σχεδίαση συστημάτων VLSI. Περιεχόμενα μαθήματος. Γιώργος Δημητρακόπουλος. Βιβλιογραφία. Ψηφιακά συστήματα.

Τελική Εξέταση, Απαντήσεις/Λύσεις

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Αφηρημένες έννοιες και τεχνολογία υπολογιστών

Αρχιτεκτονική υπολογιστών

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

Το «κλειστό» σύστημα. Ανοικτές επικοινωνίες... Εισαγωγή στην Τεχνολογία της Πληροφορικής. Εισαγωγή στην τεχνολογία της πληροφορικής

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

Εισαγωγή στην Αρχιτεκτονική Η/Υ

ΗΥ 232. Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 1. Εισαγωγή στο μάθημα. Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

1.4 Κατάταξη των υπολογιστών

Εισαγωγή στην Πληροφορική

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Χρονισμός και Απόδοση Υπολογιστικών Συστημάτων

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Δομή Ηλεκτρονικού υπολογιστή

Αρχιτεκτονική υπολογιστών

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Απόδοση Υπολογιστικών Συστημάτων

Αρχιτεκτονική Υπολογιστών. ηµήτρης Γκιζόπουλος Καθηγητής

Υ- 01 Αρχιτεκτονική Υπολογιστών Εισαγωγή

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών

Αρχιτεκτονική Υπολογιστών

ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ

Διαφορές single-processor αρχιτεκτονικών και SoCs

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΑΠΑΝΤΗΣΕΙΣ

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Θέματα Διαλέξεων. Αρχιτεκτονικές Υπολογιστικών Συστημάτων Δίκτυα Υπολογιστών Λειτουργικά Συστήματα Ενσωματωμένα Συστήματα και Εφαρμογές

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Παραλληλισμός σε επίπεδο εντολών

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α ΤΑΞΗ

Transcript:

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Καθ. Π Ευριπίδου Βοηθός: Πέτρος Παναγή 1 Τι θα μάθετε σε αυτό το μάθημα: Πώς HLL προγράμματα μεταφράζονται σε γλώσσα μηχανής και πώς το υλικό εκτελεί προγράμματα Διασύνδεση μεταξύ λογισμικού και υλικού Τι επηρεάζει την επίδοση ενός προγράμματος Πως μπορούμε να βελτιώσουμε την επίδοση του υλικού (ΕΠΛ421) Προγραμματισμός σε συμβολικό επίπεδο Σχεδιασμός σε ΗDL απλού επεξεργαστή 2 1

Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση 3 Αρχιτεκτονική Υπολογιστών: Η αφηρημένη δομή ενός Η/Υ, που πρέπει να γνωρίζει ένας προγραμματιστής για να προγραμματίσει στη γλώσσα μηχανής (The abstract structure of a computer that a machine language programmer needs to know to write programs (Instruction Set Architecture ISA) Σύνολο Εντολών Οργάνωση Υπολογιστών: Η Υλοποίηση σε υλικό/λογισμικό της αφηρημένης δομής. (The Hardware implementation of the abstract structure.) Σύστημα Μνήμης (Memory system) Δίαυλος (Bus structure) Σχεδιασμός/Υλοποίηση της Κεντρικής Μονάδας Επεξεργασίας (ΚΜΕ) (Internal CPU design) Μονάδες Εισόδου/Εξόδου Το IBM System/360 ήταν η αρχή της μοντέρνας αρχιτεκτονικής. (The IBM System/360 was the real beginning of modern Computer Architecture.) 4 2

Αφαιρετικότητα (abstraction) Υπολογιστικών συστημάτων. Το υλικό και το λογισμικό αποτελούνται από ιεραρχικά επίπεδα, όπου το χαμηλότερο επίπεδο κρύβει λεπτομέρειες του πιο πάνω επιπέδου. Προσφέρει ένα πιο απλό μοντέλο στα ψηλότερα επίπεδα. Η αρχή της αφαρετικότητας (abstraction) χρησιμοποιήται απο τους σχεδιαστές του υλικού και λογισμικού για να μπορέσουν να αντεπεξέλθουν στη πολυπλοκότητα των Υπολογιστικών συστημάτων. 5 Αφαιρετικότητα Λογισμικού C Συμβολική(ΜΙPS) Μηχανής (ΜΙPS) 6 3

Αφαιρετικότητα Λογισμικού SOURCE CODE C Συμβολική(ΜΙPS) ASSEMBLY CODE OBJECT CODE Μηχανής (ΜΙPS) 7 Γλώσσα Ψηλού Επιπέδου Συμβολική Γλώσσα Γλώσσα Μηχανής Αρχιτεκτονική Συνόλου Εντολών(ISA) Υλικό (Υπολογιστής) 8 4

Αρχιτεκτονική Συνόλου Εντολών Instruction Set Architecture (ISA) Διασύνδεση μεταξύ υλικού και λογισμικού Επιτρέπει ποικίλες υλοποιήσεις του υλικού με διαφορετικό κόστος και απόδοση για την ίδια αρχιτεκτονική ομάδας εντολών (ISA) (αφαιρετικότητα) 80386, 80486, P1, P2, P3, P4,M,Core (διαφορετικές υλοποιήσεις της ίδιας αρχιτεκτονικής) Alpha 21064, 21164, 21264, 21364 Όχι συμβατότητα στην εκτέλεση μεταξύ διαφορετικών οικογενειών επεξεργαστών 9 Βασική Οργάνωση Υλικού Υπολογιστή -Επεξεργαστής Διάδρομος Δεδομένων Έλεγχοs - Μνήμη - Interface - Περιφερειακές - Μοναδες (Ι/Ο) - Νetwork connection Computer Processor Control Datapath Memory Devices Input Output 10 5

Tυπικός Επεξεργαστής (Floorplan) - Διάδρομος Δεδομένων (Datapath) -Moνάδα Ελέγχου (Control Unit) - Κρυφή Μνήμη (Caches) - Διασύνδεση (Interface) 11 Μνήμη Κρυφή Μνήμη (Cache) 1st, 2nd level Πρωτέυουσα ή Κυριώς Mνήμη (main memory) Δευτερέυουσα Μνήμη (secondary memory) Hard, Floppy, CDs, Zips - Ταξινομήσεις Μνήμης Διάρκεια Αποθήκευσης Μόνιμη (non-volatile): μνήμη μόνο ανάγνωσης (ROM), CD- ROM, hard disk (μνήμη ανάγνωσης και αποθήκευσης) Πρόσκαιρη (volatile): τυπικά RAM π.χ. cache, main memory (μνήμη ανάγνωσης και αποθήκευσης) Τεχνολογία: CMOS (ROM, RAM, SRAM, DRAM), Magnetic Disk (hard, floppy), Laser/Optical (CD-ROM) 12 6

Oλοκληρωμένα Κυκλώματα - Η Εκπληκτική εξέλιξη στους υπολογιστές οφείλετε στις αλματώδεις και συνεχείς βελτιώσεις στην Τεχνολογία κατασκευής μνήμης και επεξεργαστών Αρχιτεκτονική και Οργάνωση Τεχνολογία μεταγλωτιστών Το 2003 οι αλματώδεις και συνεχείς βελτιώσεις στη απόδοση των επεξεργαστών σταμάτησε. Multi-core system - Τεχνολογία κόστος/απόδοσης SILICON και transistors Διαδικασία κατασκευής chip/dies Χωρητικότητα DRAΜ 13 Τεχνολογία Κατασκευής 14 7

Χωρητικότητα Eπεξεργαστών Intel 15 Εξέλιξη Τεχνολογίας Υλοποίησης 1958-10 0 1971-10 3 2002-10 7 2005-10 9 16 8

Πρόοδος της Τεχνολογίας (PC) Οι υπολογιστές είναι πιο γρήγοροι 1971: 1 million instructions/sec 2006: 10 billion instructions/sec Έχουν πιο πολύ μνήμη 1971: 0.125 megabytes 2006: 1024.0 megabytes Κοστίζουν πιο λίγο 1971: $4,000,000 2006: $1,000 Speed/size/cost improvement factor:~100s billion 17 Πρόοδος της Τεχνολογίας 18 9

Πρόοδος της Τεχνολογίας Have more disk storage (internal) 1971: 10 MB IMPROVEMENT: 50000 x 2006: 500,000 MB (soon beyond 1 terabyte = 1000GB) Higher communication speeds Human speech: 30 bits/sec 1971-2001 1971 Modem 300 bits/sec IMPROVEMENT: 2001 Modem: 56,000 bits/sec 3 BILLION x T1 line: 1,544,000 bits/sec Internet 2: 1,000,000,000 bits/sec Nortel: 1,000,000,000,000 bits/sec in 1 fiber (entire U.S. telephone traffic) 19 Γεννεές/Χαρακτηριστικά Υπολογιστών Νέα τεχνολογία νέα γεννεά 1. vacuum tube, 2. transistor, 3. integrated cct, 4. vlsi (CMOS) Τρομερές αλλαγές στα χαρακτηριστικά επεξεργαστών στα τελευταία 20 χρόνια Άυξηση απόδοσης >50% ανά χρόνο (1986-2002) ιπλασιασμός χωρητικότητας ανά 18/24 μήνες Προκλήσεις: ενέργεια, ισχύς και θερμότητα 20 10

Arvind Keynote speech ISCA 2005,: RAMPS project -- Dave Patterson Uniprocessor Performance (SPECint) 10000 20%/year Performance (vs. VAX-11/780) 1000 100 10 25%/year 52%/year 1 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006 VAX : 25% per year 1978 to 1986 RISC + x86: 52% per year 1986 to 2002 RISC + x86: 20% per year 2002 to 2005 21 The Memory Wall Relative Performance CPU starves! Year 22 11

CPU-Memory Speed 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 Overcoming the Memory wall: 8KB L1 (Intel 486, 1989) On-board L2 (Pentium Pro, 1995) On-package L2 (Pentium II, 1997) On-die L2 (Pentium III, 1999) 23 2008 2009 2010 Source: J. Patterson, Modern Microprocessors, www.pattosoft.com.au/articles/modernprocessors Γενεά Ημερομ. Τεχνολογία Κύρια νέα προϊόντα 1 1950 1959 Λυχνίες Εμπορικός ηλεκτρονικός υπολογιστής 2 1960 1968 Κρυσταλλοτριόδοι Πιο φθηνοί ηλεκτρονικοί υπολογιστές 3 1969 1977 Ολοκληρωμένα κυκλώματα Μικροϋπολογιστές 4 1978 1995 Μεγάλης και πολύ μεγάλης κλίμακας ολοκληρωμένα κυκλώματα 5? 1996 2004 Μικροεπεξεργαστής; 6? 2005 -? Πολυπυρήνες (multicore) Προσωπικοί υπολογιστές και σταθμοί εργασίας Προσωπικές, φορητές υπολογιστικές μηχανές και παράλληλοι επεξεργαστές; Ενσωματωμένοι 24 12

Χρόν Όνομα Μέγεθ (ft 2 ) Ισχύς (watts) Απόδοση (adds/sec) Μνή μη (KB) Κόστος $ 1951 Univac1 1000 124,500 1,900 48 1,000,000 1964 IBM 60 10,000 500,000 64 1,000,000 S360/ Mode50 1965 PDP 8 8 500 330,000 4 16,000 1976 Cray -1 58 60,000 166,000,000 32,768 4,000,000 1981 IBM PC 1 150 240,000 256 3,000 1991 HP900/ model 750 2 500 50,000,000 16,384 7,4000 2006 Dell PC (Intel Core Duo) 0.75 375 4,000,000,000 2MB (onchip) 1000 Επίσης συνέπεια της τεχνολογίας η διαφοροποίηση της αγοράς 26 13

Μέτρα Απόδοσης (Performance Measures) Ο χρόνος είναι το μέτρο της απόδοσης ενός Η/Υ. Ο Η/Υ που εκτελεί μια εργασία στο λιγότερο χρόνο είναι και ο πιο γρήγορος. (Time is the measure of computer performance: The computer that performs the same amount of work in the least time is the fastest.) Ωρολόγιο Τοίχου (Wall-clock time (response or elapsed time) Χρόνος Ανταπόκρισης (response time): ο χρόνος που πέρασε. Αλλά... λειτουργικό σύστημα Ε/Ε(Ι/Ο) συστήματα πολλαπλών χρηστών > time gcc foo.c -o foo real 2m39,00 user 1m30,70s sys 0m12,90s Μέτρα όπως η συχνότητα (χρόνος κύκλου μηχανής) δεν είναι πάντοτε ενδεικτικά της απόδοσης. (Measures like clock speed do not tell the whole story) Παράδειγμα: IBM Power5 1.5GHz & Intel P4 3.8GHz 27 Τι επηρεάζει τις παραμέτρους απόδοσης Time = I x CPI x Clock Cycle Time - I (instructions): αρχιτεκτονική και μεταγλωττιστής instrumentation, προσομοίωση, μετρητές υλικού - CPI (Clock Cycles per Instruction): οργάνωση (χαρακτηριστικά προγράμματος/δεδομένων) προσομείωση, μετρητές υλικού - Clock Cycle Time: τεχνολογία Αλληλοεπιδράσεις μεταξύ Ι, CPI και Clock Cycle Time (συγκρουόμενοι στόχοι) Clock Cycles = Σ CPI i x Ι i για κάθε κατηγόρια εντολών i: μέσος όρος κύκλων ανά εντολή (CPI i ) και αριθμός εντολών (Ι i ) 28 14

Δύο υλοποιήσεις της ίδιας αρχιτεκτονικής για κάποιο πρόγραμμα Κύκλος Ρολογιού CPI A 10ns 2 B 20ns 1.2 Ποιά μηχανή έχει την καλύτερη απόδοση και πόσο καλύτερη είναι; 29 CPU Time A = ns CPU Time B = ns Aπόδοση Α = 1 / CPU Time A Aπόδοση B = 1 / CPU Time B Aπόδοση Α / Απόδοση Β = 30 15

Άλλα Μέτρα Σύγκρισης: ΜΙPS & ΜFLOPS MIPS= Million Instructions Per Second MIPS = Eντολές / Χρόνος x 10 6 MIPS = Συχνότητα / CPI x 10 6 Προβλήματα με το MIPS δεν σχετίζεται με την αρχιτεκτονική ή οργάνωση (δεν μπορεί να συγκρίνεις διαφορετικές αρχιτεκτονικές ή οργανώσεις) δυνατόν να διαφέρει αντιστρόφως ανάλογα με την απόδοση MFLOPS= Million Floating Point Operations per Sec τα ίδια προβλήματα με MIPS, ίσως και χειρότερα διαφορετικές αρχιτεκτονικές/υλοποιήσεις δεν παρέχουν την ίδια υποστηρίξη για FP εντολές 31 Επιλογή Προγραμμάτων (Βenchmarks) για Αξιολόγηση Σχεδιαστές σήμερα χρησιμοποιούν πραγματικές εφαρμογές Στο παρελθόν kernels, microbenches περιορισμένης εμβέλειας/χρήσεως βελτιστοποιήσεις SPEC: Οοργανισμός με μέλη διάφορες εταιρείες www.spec.org Mέτρα: Execution Time Ratio Γεωμετρικός Μέσος (Geometric Mean) Spec Ratio 32 16

SPEC: Γεωμετρικός Μέσος Γιά κάθε πρόγραμμα i υπολόγιζει το execution ratio ER i =(χρονος σε 300 MHz UltraSun 5_10 / Χρονος μηχανη μετρησης )* 100 Συνόψισε τα Execution Ratio n προγραμμάτων με Γεωμετρικό Μέσο nn SpecRatio = Π ER i i=1 Γεωμετρικός Μέσος ανεξάρτητο αναλογίας (Α/Β ή Β/Α) δεν διατηρά σχέση με τον χρόνο εκτέλεσης (πόσο πιο γρήγορη είναι μια μηχανή) SPEC CPU2000: 12 integer και 14 floating point εφαρμογές 33 Περιγραφή Συστημάτων 34 17

SPEC Ratio για 4 συστήματα 35 Παρατηρήσεις - Γρηγορότερο ρολόι δεν είναι αρκετό ο επεξεργαστής 21164 με 533ΜΗz ρολόι έχει χαμηλότερο SPEC Ratio από τον 21264 με ρολόι 500ΜΗz - Γιατί; το CPI του 21264 είναι χαμηλότερο. Καλύτερη Οργάνωση Επεξεργαστή και Ιεραρχίας Mνήμης (κεφ. 5,6 και 7) 36 18

Power Consumption 37 Νόμος του Amdahl (Amdahl's Law) Speedup overall (S over ): Kαθολική επιτάχυνση Speedup Enhancement (S enh ): Ποσοστό επιτάχυνσης Fraction Enhancement (F enh ): Κλάσμα της διαδικασίας που έχει βελτιωθεί/επιταχυνθεί Speedup overall = 1 - Fraction 1 Speedup overall = F 1-Fe S enhancement 38 e e 1 Fraction Speedup enhancement enhancement 19

Παράδειγμα 1: F enh = 0.5 S enh =? S overall =3 Αδύνατο! Speedup overall = 1 - Fraction Speedup = overall e 1-Fe Se 39 1 F enhancement 1 Fraction Speedup enhancement enhancement Παράδειγμα 1: F enh = 0.3 S enh = 3 S overall =? Speedu p = overal l Sample Questions: 1-0.3 2.1-2.4, 2.6, 2.15, 2.29-2.31 3.1-3.7, 3.10, 3.12 4.1 4.4 1 0.3 3 125. 40 20

Κύρια σημεία Για επιτυχή ανάπτυξη του λογισμικού χρειάζεται πολύ καλή γνώση της οργάνωσης του υπολογιστή. Τα δεδομένα και οι εντολές αναπαριστούνται στο διάδικο σύστημα. Οι Η/Υ εκτελούν μόνο εντολές γλώσσας μηχανής. Τα πέντε μέρη του Η/Υ: είσοδος, έξοδος, μνήμη, διάδρομος δεδομένων και έλεγχος. Ιεραρχία υλικού και λογισμικού. Αρχιτεκτονική της ομάδας εντολών (Instruction set architecture). Υλοποίηση μιας αρχιτεκτονικής. Τα αποτελέσματα της διπλασιάσεις της χωρητικότητας της τεχνολογίας κατασκευής τσιπς cmos κάθε ενάμιση/δύο χρόνια Σταμάτησε το 2003 Πως μετρούμε και συγκρίνουμε την επίδοση 41 21