Download - ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Transcript
Page 1: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

1Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

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

Διδάσκων Γιάννος ΣαζεϊδηςΒοηθός: Πέτρος Παναγή

• Κεφ. 1: Computer Abstractions and Technology

• Βιβλίο: Computer Organization and Design

Page 2: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

2Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Τι θα μάθετε σε αυτό το μάθημα:

– Πώς HLL (High Level Language) προγράμματα μεταφράζονται σε γλώσσα μηχανής και πώς το υλικό εκτελεί προγράμματα

– Διασύνδεση μεταξύ λογισμικού και υλικού– Τι επηρεάζει την επίδοση ενός προγράμματος– Πως μπορούμε να βελτιώσουμε την επίδοση του υλικού (ΕΠΛ370, ΕΠΛ372)

– Προγραμματισμός σε συμβολικό επίπεδο– Σχεδιασμός σε ΗDL απλού επεξεργαστή

Page 3: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

3Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Υπολογιστής: Αφαιρετικότητα,Τεχνολογία και απόδοση

Page 4: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

4Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

• Αρχιτεκτονική Υπολογιστών: Η αφηρημένη δομή ενός Η/Υ, πουπρέπει να γνωρίζει ένας προγραμματιστής για να προγραμματίσει στη γλώσσα μηχανής (The abstract structure of a computer that a machine language programmer needs to know to write programs (Instruction Set Architecture ISA)– Σύνολο Εντολών

• Οργάνωση Υπολογιστών: Η Υλοποίηση σε υλικό/λογισμικό της αφηρημένης δομής. (The Hardware/software implementation of the abstract structure.)– Σύστημα Μνήμης (Memory system)– Δίαυλος (Bus structure)– Σχεδιασμός/Υλοποίηση της Κεντρικής Μονάδας Επεξεργασίας

(ΚΜΕ) (Internal CPU/Processor design)– Μονάδες Εισόδου/Εξόδου (Ι/Ο)

Page 5: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

5Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Αφαιρετικότητα (abstraction) υπολογιστικών συστημάτων

• Το υλικό και το λογισμικό αποτελούνται από ιεραρχικά επίπεδα, όπου το χαμηλότερο επίπεδο κρύβει λεπτομέρειες του πιο πάνω επιπέδου.

• Έτσι προσφέρεται ένα πιο απλό μοντέλο στα ψηλότερα επίπεδα, αυτή η τεχνική ονομάζεται αφαιρετικότητα.

• Η αρχή της αφαιρετικότητας (abstraction) χρησιμοποιείται από τους σχεδιαστές του υλικού και λογισμικού για να μπορέσουν ναανταπεξέλθουν στη πολυπλοκότητα τους

Page 6: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

6Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

ΑφαιρετικότηταΛογισμικού

C

Συμβολική(ΜΙPS)

Μηχανής (ΜΙPS)

Page 7: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

7Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

SOURCECODE

ASSEMBLYCODE

OBJECTCODE

Page 8: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

8Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Γλώσσα Ψηλού Επιπέδου

Συμβολική Γλώσσα

Γλώσσα Μηχανής

Υλικό (Υπολογιστής)

Αρχιτεκτονική Συνόλου Εντολών(ISA)

Page 9: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

9Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Αρχιτεκτονική Συνόλου ΕντολώνInstruction Set Architecture (ISA)

• Διασύνδεση μεταξύ υλικού και λογισμικού• Επιτρέπει ποικίλες υλοποιήσεις του υλικού με διαφορετικό κόστος και απόδοση για την ίδια αρχιτεκτονική ομάδας εντολών (ISA) (αφαιρετικότητα)

• 80386, 80486, P1, P2, P3, P4,M,Core,Core2,i3/5/7… (διαφορετικές υλοποιήσεις της ίδιας αρχιτεκτονικής)

• Backward Compatible• Όχι συμβατότητα στην εκτέλεση μεταξύ οικογενειών επεξεργαστών• x86 binary can not run on ARM processor and ARM binary can

not run on x86 processor

Page 10: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

10Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Βασική Οργάνωση Υλικού Υπολογιστή

-Επεξεργαστής– Διάδρομος Δεδομένων– Μονάδα Ελέγχου

- Μνήμη- Interface- Περιφερειακές

- Μοναδες (Ι/Ο)- Νetwork connection

Processor

Computer

Control

Datapath

Memory Devices

Input

Output

Page 11: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

11Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

TυπικόςΕπεξεργαστής (Floorplan)- Διάδρομος Δεδομένων (Datapath)- Moνάδα Ελέγχου (Control Unit)- Κρυφή Μνήμη (Caches)- Διασύνδεση (Interface)

- Πολύ-πυρήνες- Γραφική Επεξεργασια

Page 12: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

12Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Μνήμη• Κρυφή Μνήμη (Cache)

– 1st, 2nd, 3rd level (Last Level Cache or LLC)

• Πρωτέυουσα ή Κυριώς Mνήμη (main memory)

• Δευτερέυουσα Μνήμη (secondary memory)– Hard, SSD/Flash, Tape, DVD, CD

- Ταξινομήσεις Μνήμης– Διάρκεια Αποθήκευσης

• Μόνιμη (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), Solid State (SSD)

Page 13: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

13Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Oλοκληρωμένα Κυκλώματα

- Η Εκπληκτική εξέλιξη στους υπολογιστές οφείλετε στιςαλματώδεις και συνεχείς βελτιώσεις στην– Τεχνολογία κατασκευής μνήμης και επεξεργαστών– Αρχιτεκτονική και Οργάνωση– Τεχνολογία μεταγλωτιστών– Μέγεθος και ποικιλία αγοράς

- Τεχνολογία– κόστος/απόδοση– SILICON και transistors– Διαδικασία κατασκευής chip/dies– Χωρητικότητα DRAΜ

Page 14: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

14Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Τεχνολογία Κατασκευής

https://www.youtube.com/watch?v=aCOyq4YzBtY

Page 15: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

15Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Χωρητικότητα Eπεξεργαστών: ΔΙΠΛΑΣΙΑΜΟΣ των τρανζιστορς κάθε ~2 χρόνια (Moore’s Law)

Page 16: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

16Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Εξέλιξη Τεχνολογίας Υλοποίησης

1958-100 2002-1071971-103 2005-1091947

Page 17: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

17Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Οι υπολογιστές είναι πιο γρήγοροι– 1971: 1 million instructions/sec– 2016: 10 billion instructions/sec

Έχουν πιο πολύ μνήμη– 1971: 0.125 megabytes– 2016: 16.0 gigabytes

Κοστίζουν πιο λίγο– 1971: $4,000,000– 2016: $1,000

Speed/size/cost improvement factor:~100s billion

Πρόοδος της Τεχνολογίας (PC)

Page 18: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

IC Sales

267 billion Integrated circuits expected to ship in 2016 (McClean Report)

$203 billion sales (IC Insights)– 36.7 Billion Memory/Flash Units– 300 million pc/laptop processors (2015)– 23 million server processors – mostly Intel x86 (2015)– 14 billion ARM based chips (2015)

Introduction

Page 19: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

19Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Γεννεές/Χαρακτηριστικά Υπολογιστών

Νέα τεχνολογία νέα γεννεά1. vacuum tube, 2. transistor, 3. integrated cct, 4. vlsi (CMOS)

• Τρομερές αλλαγές στα χαρακτηριστικά επεξεργαστών/μνήμης στα τελευταία 40 χρόνια

• Προκλήσεις: • μνήμη vs επεξεργαστής, • Ισχύς• Θερμότητα• Αξιοπιστία

Page 20: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

20Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

The Memory WallRe

lati

ve P

erfo

rman

ce

Year

CPU starves!

Page 21: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Cache Hierarchy (manage placement and replacement)

21Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Page 22: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

22Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Power Wall

Page 23: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

23Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Επίδοση ενός Επεξεργαστή 1978-2012

Page 24: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Static and Dynamic Program

int array_sum(int *a, int n)sum = 0;for(i=0;i<n;i++)

sum+=a[i];return sum;

How many lines of C code? How many assembly operations

if n=10. How many operations get executed?How many assembly instructions?

24Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

// $4 is a, $5 is n// $? is sum, $? is i

blez $5,$L8

move $2,$0move $3,$0

$L4:lw $6,0($4)addiu $3,$3,1addu $2,$2,$6addiu $4,$4,4bne $3,$5,$L4

j $31 //return$L8:

move $2,$0j $31 // return

Page 25: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

25Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Τι επηρεάζει τις παραμέτρους απόδοσης

Execution Time = I x CPI x Clock Cycle Time

- I (instructions): αρχιτεκτονική και μεταγλωττιστής

- CPI (Clock Cycles per Instruction): οργάνωση (χαρακτηριστικά προγράμματος/δεδομένων)

- Clock Cycle Time: τεχνολογία

Αλληλοεπιδράσεις μεταξύ Ι, CPI και Clock Cycle Time (συγκρουόμενοιστόχοι)

Clock Cycles = Σ CPIi x Ιi

– για κάθε κατηγόρια εντολών i: μέσος όρος κύκλων ανά εντολή (CPIi) και αριθμός εντολών (Ιi)

Page 26: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

26Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Δύο υλοποιήσεις της ίδιας αρχιτεκτονικής για κάποιο πρόγραμμα

Κύκλος Ρολογιού CPI A 1ns 2B 2ns 1.2

Ποιά μηχανή έχει την καλύτερη απόδοση και πόσοκαλύτερη είναι;

Page 27: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

27Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

CPU Time A = ____ nsCPU Time B = ____ ns

Aπόδοση Α = 1 / CPU Time AAπόδοση B = 1 / CPU Time B

Aπόδοση Α / Απόδοση Β = _____

Page 28: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Pipeline

28Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Page 29: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

29Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Επιλογή Προγραμμάτων (Βenchmarks) για Αξιολόγηση

Σχεδιαστές σήμερα χρησιμοποιούν πραγματικές εφαρμογές

SPEC: Οοργανισμός με μέλη διάφορες εταιρείεςwww.spec.org

Mέτρα: Execution Time Ratio Γεωμετρικός Μέσος (Geometric Mean) Spec Ratio

Ποικιλία από benchmarks

Page 30: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

30Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

SPEC: Γεωμετρικός Μέσος Γιά κάθε πρόγραμμα i υπολόγιζει το execution ratio

ERi=(χρόνος αναφοράς σε συγκεκριμένη μηχανή/ Χρόνος μηχανής μέτρησης )

Συνόψισε τα Execution Ratio n προγραμμάτων με Γεωμετρικό Μέσο

n nSpecRatio = Π ERii=1

Γεωμετρικός Μέσος Και άλλοι μέσοι

SPEC CPU2006: 29 integer και floating point εφαρμογές

Page 31: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

31Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Page 32: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

32Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Νόμος του Amdahl (Amdahl's Law)• Speedupoverall(Sover): Kαθολική επιτάχυνση• SpeedupEnhancement(Senh): Ποσοστό επιτάχυνσης• FractionEnhancement(Fenh): Κλάσμα της διαδικασίας που έχει βελτιωθεί/επιταχυνθεί

Speedup = 1

1 - FractionFractionSpeedup

Speedup = 1

1 - FFS

overall

enhancementenhancement

enhancement

overall

ee

e

Page 33: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

33Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Παράδειγμα 1:– Fenh = 0.5– Senh= ?– Soverall=3 –Αδύνατο!

Speedup = 1

1 - FractionFractionSpeedup

Speedup = 1

1 - FFS

overall

enhancementenhancement

enhancement

overall

ee

e

Page 34: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

34Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Παράδειγμα 1:– Fenh = 0.3– Senh= 3– Soverall=?

Speedu p = 1

1 - 0.3 0.33

overal l

1 25.

Page 35: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

35Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Κύρια σημεία • Για επιτυχή ανάπτυξη του λογισμικού χρειάζεται πολύ καλή γνώση της οργάνωσης του υπολογιστή.

• Τα δεδομένα και οι εντολές αναπαριστούνται στο διάδικο σύστημα.

• Οι Η/Υ εκτελούν μόνο εντολές γλώσσας μηχανής.• Τα πέντε μέρη του Η/Υ: είσοδος, έξοδος, μνήμη, διάδρομος δεδομένων και έλεγχος.

• Ιεραρχία υλικού και λογισμικού.• Αρχιτεκτονική της ομάδας εντολών (Instruction set

architecture).• Υλοποίηση μιας αρχιτεκτονικής.• Τα αποτελέσματα της διπλασιάσεις της χωρητικότητας της τεχνολογίας κατασκευής τσιπς cmos κάθε ενάμιση/δύο χρόνια.

• Πως μετρούμε και συγκρίνουμε την επίδοση

Page 36: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Πληροφορίες για το EΠΛ221• ∆ιδάσκων: Γιάννος Σαζεϊδης• Διαλέξεις: 4.30-6 Τρίτη και Παρασκευή, 4.30-6 Τετάρτη• Βοηθος: Πετρος Παναγή• www.cs.ucy.ac.cy/courses/EPL221

• Τι θα μάθετε/στόχοι:– Τεχνολογία Υπολογιστών, Μεθοδολογία αξιολόγησης και σύγκρισης απόδοσης επεξεργαστών

– Προγραμματισμός σε συμβολικό επίπεδο– Βασικές αρχές: pipelining και memory hierarchy– Σχεδιασμός ενός απλού επεξεργαστή

Page 37: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Πληροφορίες για το EΠΛ221• Προαπαιτούμενα

– Digital Systems(ΕΠΛ121) and Programming Principles (ΕΠΛ131)

• Βιβλιογραφία: Computer Organization and Design, Henessy & Patterson 5th edition

Page 38: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Πληροφορίες για ΕΠΛ221• Εργαστήριο:

– εισαγωγή εργαλείων– αξιολόγηση εργασιών

• Αξιολόγηση– Εργασίες 20-25 %

• 4-5 ασκήσεις– Τελική Εργασία (project) 10%– Ενδιάμεση – 20%– Τελική – 45-50%

Page 39: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

Λευκωσία-Πάφος 150 χλμ75 χλμ Λ/σια-Γερμασόγεια, μέση Ταχύτητα Υ χλμ/ωρα

60 χλμ Πολεμίδια-Πάφος, μέση Ταχύτητα Υ χλμ/ωρα

15 χλμ round-abouts, μεση ταχύτητα Ζ χλμ/ωρα

Αν κάποιος οδηγά Υ = 100 και Ζ = 80 πόσο πιο γρήγορα θα είναι το ταξίδι εάν Υ=150

39Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Page 40: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

40Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Άλλα Μέτρα Σύγκρισης: ΜΙPS & ΜFLOPS

• MIPS= Million Instructions Per Second– MIPS = Eντολές / Χρόνος x 106

– MIPS = Συχνότητα / CPI x 106

• Προβλήματα με το MIPS– δεν σχετίζεται με την αρχιτεκτονική ή οργάνωση (δεν μπορεί να συγκρίνεις διαφορετικές αρχιτεκτονικές ή οργανώσεις)

– δυνατόν να διαφέρει αντιστρόφως ανάλογα με την απόδοση

• MFLOPS= Million Floating Point Operations per Sec– τα ίδια προβλήματα με MIPS, ίσως και χειρότερα– διαφορετικές αρχιτεκτονικές/υλοποιήσεις δεν παρέχουν την ίδια υποστηρίξη για FP εντολές

Page 41: ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός … · – Βασικές αρχές: pipelining και memory hierarchy – Σχεδιασμός ενός

41Ενότητα 1-2 - Υπολογιστής: Αφαιρετικότητα, Τεχνολογία και απόδοση

Μέτρα Απόδοσης (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 fooreal 2m39,00user 1m30,70ssys 0m12,90s

• Μέτρα όπως η συχνότητα (χρόνος κύκλου μηχανής) δεν είναι πάντοτε ενδεικτικά της απόδοσης. (Measures like clock speed do not tell the whole story)

• Παράδειγμα:– IBM Power5 1.5GHz & Intel P4 3.8GHz