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

Σχετικά έγγραφα
Οργάνωση Υπολογιστών

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

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

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI. Μανόλης Γ.Η. Κατεβαίνης

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

Μάθημα 5: Χαρακτηριστικά της Κ.Μ.Ε.

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

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής

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

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

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

Πανεπιστήµιο Θεσσαλίας

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

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

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

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

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

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου

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

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

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

ΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789

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

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

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

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

ΑΣΚΗΣΕΙΣ ΚΙΝΗΜΑΤΙΚΗΣ. = t. (1) 2 επειδή Δx 1 = Δx 2 = Δ xoλ / 2 Επειδή Δx 1 = u 1 t 1, από την

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

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

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τμήμα Πληροφορικής

Πανεπιστήµιο Θεσσαλίας

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

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

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα

πίνακας σελίδων Bit Παρουσίας Αριθμός Πλαισίου

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

Κεφάλαιο 1 : Εισαγωγή

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Εισαγωγή στα Συστήματα Ψηφιακής Επεξεργασίας Σήματος

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:

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

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

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

Μικροεπεξεργαστές ΑΣΚΗΣΕΙΣ ΘΕΩΡΙΑΣ. Υπεύθυνος: Δρ Άρης Παπακώστας

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 9 ο. Πανεπιστήµιο Θεσσαλίας - Τµήµα Μηχανικών Η/Υ, Τηλεπικοινωνιών και ικτύων

4.1 Η ΕΝΝΟΙΑ ΤΗΣ ΕΞΙΣΩΣΗΣ

ΘΕΜΑ 2. (2,5 µονάδες) Θεωρήστε τρεις κρυφές µνήµες των 512 πλαισίων µε 8 λέξεις ανά πλαίσιο και οργανώσεις αντίστοιχα:

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

Ηλεκτρονικός Υπολογιστής

Ερωτήσεις ανάπτυξης. α) να βρείτε το σηµείο x 0. β) να αποδείξετε ότι η κλίση της εφαπτοµένης της

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

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

Ασφάλεια Πληροφοριακών Συστηµάτων. Επαναληπτικές Ασκήσεις

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

Άλγεβρα Γενικής Παιδείας Β Λυκείου 2001

Παραλληλισµός Εντολών (Pipelining)

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

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


Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Εντολές γλώσσας μηχανής

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

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΟΡΙΖΟΝΤΙΑ ΒΟΛΗ ΚΑΙ ΟΜΑΛΗ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ

ΦΥΣΙΚΗ ΘΕΤΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΑΙ ΤΩΝ ΥΟ ΚΥΚΛΩΝ) Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ 2002 ÈÅÌÅËÉÏ

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

Πίνακας κατανοµής συχνοτήτων και αθροιστικών συχνοτήτων. Σχετ.

15 εκεµβρίου εκεµβρίου / 64

5.3 ΓΕΩΜΕΤΡΙΚΗ ΠΡΟΟ ΟΣ

8.1 Θεωρητική εισαγωγή

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

Παράδειγμα #1 ΑΡΙΘΜΗΤΙΚΗ ΚΙΝΗΤΗΣ ΥΠΟΔΙΑΣΤΟΛΗΣ ΕΠΙΜΕΛΕΙΑ: Ι. Λυχναρόπουλος

ΦΥΣΙΚΗ ΘΕΤΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΑΙ ΤΩΝ ΥΟ ΚΥΚΛΩΝ) Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ 2002

ΠΕΡΙΕΧΟΜΕΝΑ Υλικό και Λογισμικό Αρχιτεκτονική Υπολογιστών Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

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

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση

α. 0cm. β. 10cm. γ. 20cm. δ. 40cm.

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

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

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Ευθύγραμμη Κίνηση

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

1 η Ενδιάμεση Εξέταση Απαντήσεις/Λύσεις

Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές»

Αριθµητική Ανάλυση. ιδάσκοντες: Τµήµα Α ( Αρτιοι) : Καθηγητής Ν. Μισυρλής, Τµήµα Β (Περιττοί) : Επίκ. Καθηγητής Φ.Τζαφέρης. 25 Μαΐου 2010 ΕΚΠΑ

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ

Πανεπιστήµιο Θεσσαλίας

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ

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

Λίγα λόγια από το συγγραφέα Εισαγωγή στους υπολογιστές Μονάδες µέτρησης χωρητικότητας Συσκευές εισόδου...

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y»

ΑΠΑΝΤΗΣΕΙΣ - ΥΠΟ ΕΙΞΕΙΣ ΣΥΝΤΟΜΕΣ ΛΥΣΕΙΣ ΣΤΙΣ ΕΡΩΤΗΣΕΙΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-ΙI. Ενότητα 5 : Αρχιτεκτονική ΙΑ-32

Εκφωνήσεις και λύσεις των ασκήσεων της Τράπεζας Θεμάτων στην Άλγεβρα Α ΓΕΛ

1. Μια σφαίρα κινείται ευθύγραμμα και στο παρακάτω σχήμα βλέπετε την θέση της Α για t=0.

Transcript:

Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών Ασκήσεις Η αρίθµηση των ασκήσεων είναι από την 4 η έκδοση του «Οργάνωση και Σχεδίαση Υπολογιστών: η διασύνδεση υλικού και λογισµικού», D.A.Patterson, J.L.Hennessy

Άσκηση 1.3 Θεωρήστε τρεις διαφορετικούς επεξεργαστές P1, P2, και P3 που εκτελούν το ίδιο σύνολο εντολών, µε τους ρυθµούς ρολογιού και τα CPI που δίνονται στον επόµενο πίνακα. Επεξεργαστής Ρυθµός ρολογιού CPI P1 2 GHz 1,5 P2 1,5 GHz 1,0 P3 3 GHz 2,5 1.3.1 Ποιος επεξεργαστής έχει τη µεγαλύτερη απόδοση; Απόδοση του P1 (εντολές/sec) = 2 10 9 /1.5 = 1.33 10 9 Απόδοση του P2 (εντολές/sec) = 1.5 10 9 /1.0 = 1.5 10 9 Απόδοση του P3 (εντολές/sec) = 3 10 9 /2.5 = 1.2 10 9 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 2

Άσκηση 1.3 (συνέχεια) 1.3.2 Αν κάθε επεξεργαστής εκτελεί ένα πρόγραµµα σε 10 δευτερόλεπτα, βρείτε το πλήθος των κύκλων και το πλήθος των εντολών. Πλήθος κύκλων = Χρόνος Ρυθµός ρολογιού κύκλοι(p1) = 10 2 10 9 = 20 10 9 s κύκλοι(p2) = 10 1.5 10 9 = 15 10 9 s κύκλοι(p3) = 10 3 10 9 = 30 10 9 s Χρόνος= (Πλήθος εντολών CPI)/Ρυθµό ρολογιού, άρα Πλήθος εντολών = Πλήθος κύκλων / CPI Εντολές(P1) = 20 10 9 /1.5 = 13.33 10 9 Εντολές(P2) = 15 10 9 /1 = 15 10 9 Εντολές(P3) = 30 10 9 /2.5 = 12 10 9 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 3

Άσκηση 1.3 (συνέχεια) 1.3.3 Προσπαθούµε να µειώσουµε το χρόνο κατά 30%, αλλά αυτό οδηγεί σε µια αύξηση του CPI κατά 20%. Ποιο ρυθµό ρολογιού πρέπει να έχουµε για να πετύχουµε αυτή τη µείωση χρόνου; Χρόνος νέος = Χρόνος παλιός 0.7 = 7 s CPI = CPI 1.2, άρα CPI(P1) = 1.8, CPI(P2) = 1.2, CPI(P3) = 3 Ρυθµός = Πλήθος εντολών CPI/Χρόνος, δηλαδή Ρυθµός(P1) = 13.33 10 9 1.8/7 = 3.42 GHz Ρυθµός(P2) = 15 10 9 1.2/7 = 2.57 GHz Ρυθµός(P3) = 12 10 9 3/7 = 5.14 GHz Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 4

Άσκηση 1.4 Θεωρήστε δύο διαφορετικές υλοποιήσεις της ίδιας αρχιτεκτονικής συνόλου εντολών. Υπάρχουν τέσσερις κατηγορίες εντολών Α, Β, Γ, και. Ο ρυθµός ρολογιού και τα CPI κάθε υλοποίησης δίνονται στον παρακάτω πίνακα. Ρυθµός ρολογιού CPI κατηγορία Α CPI κατηγορία Β CPI κατηγορία Γ CPI κατηγορία P1 1,5 GHz 1 2 3 4 P2 2,0 GHz 2 2 2 2 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 5

Άσκηση 1.4 (συνέχεια) 1.4.1 Για ένα πρόγραµµα µε 10 6 εντολές στις κατηγορίες ως εξής: 10% κατηγορία A, 20% κατηγορία B, 50% κατηγορία Γ, και 20% κατηγορία, ποια υλοποίηση είναι ταχύτερη; Κατ. A: 10 5 εντολές, Κατ. Β: 2 10 5 εντολές, Κατ. Γ: 5 10 5 εντολές, Κατ. : 2 10 5 εντολές Χρόνος = Πλήθος εντολών CPI/Ρυθµός ρολογιού P1: Χρόνος κατ. A = [ (10 5 x 1) / (1.5 x 10 9 ) ] sec = 2/3 10 4, οµοίως: Χρόνος κατ. B = 8/3 10 4, Χρόνος κατ. Γ = 10 10 4, Χρόνος κατ. = 16/3 10 4 Συνολικός χρόνος P1 = 18.6667 10 4 sec P2: Χρόνος κατ. A = 10 4, Χρόνος κατ. B = 2 10 4, Χρόνος κατ. Γ = 5 10 4, Χρόνος κατ. = 2 10 4 Συνολικός χρόνος P2 = 10 10 4 sec Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 6

Άσκηση 1.4 (συνέχεια) 1.4.2 Ποιο είναι το συνολικό CPI για κάθε υλοποίηση; CPI = Χρόνος Ρυθµός ρολογιού/πλήθος εντολών CPI(P1) = 18.66667 10 4 1.5 10 9 /10 6 = 2.8 CPI(P2) = 10 10 4 2 10 9 /10 6 = 2.0 1.4.3 Βρείτε τους κύκλους ρολογιού που απαιτούνται και στις δύο περιπτώσεις. Κύκλοι ρολογιού(p1) = 10 5 1 + 2 10 5 2 + 5 10 5 3 + 2 10 5 4 = 28 10 5 Κύκλοι ρολογιού(p2) = 10 5 2 + 2 10 5 2 + 5 10 5 2 + 2 10 5 2 = 20 10 5 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 7

Άσκηση 1.4 (συνέχεια) Ο επόµενος πίνακας παρουσιάζει το πλήθος των εντολών ενός προγράµµατος. Αριθµητικές Αποθήκευσης (store) Φόρτωσης (load) ιακλάδωσης (branch) Σύνολο 500 50 100 50 700 1.4.4 Με την προϋπόθεση ότι οι αριθµητικές εντολές διαρκούν 1 κύκλο, οι φορτώσεις και οι αποθηκεύσεις 5 κύκλους, και οι διακλαδώσεις 2 κύκλους, ποιος είναι ο χρόνος εκτέλεσης του προγράµµατος σε έναν επεξεργαστή των 2 GHz; (500 1 + 50 5 + 100 5 + 50 2) 0.5 10 9 = = 675 ns Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 8

Άσκηση 1.4 (συνέχεια) 1.4.5 Βρείτε το CPI του προγράµµατος. CPI = 675 10 9 2 10 9 /700 = 1.92 1.4.6 Αν το πλήθος των εντολών φόρτωσης µπορεί να µειωθεί στο µισό, ποια είναι η επιτάχυνση και το CPI; Χρόνος = (500 1 + 50 5 + 50 5 + 50 2) 0.5 10 9 = 550 ns Επιτάχυνση = 675 ns/550 ns = 1.22 CPI = 550 10 9 2 10 9 /650 = 1.69 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 9

Άσκηση 1.6 Οι µεταγλωττιστές έχουν πολύ µεγάλη επίδραση στην απόδοση µιας εφαρµογής σε συγκεκριµένο επεξεργαστή. Αυτό το πρόβληµα θα διερευνήσει τη επίδραση που έχουν οι µεταγλωττιστές στο χρόνο εκτέλεσης. Μεταγλωττιστής Α Μεταγλωττιστής Β Αρ.εντολών Χρ.εκτέλεσης Αρ.εντολών Χρ.εκτέλεσης α. 1,0 x 10 9 1,0 s 1,2 x 10 9 1,4 s β. 1,0 x 10 9 0,8 s 1,2 x 10 9 0,7 s 1.6.1 Για το ίδιο πρόγραµµα, χρησιµοποιούνται δύο διαφορετικοί µεταγλωττιστές. Ο πίνακας δείχνει το χρόνο εκτέλεσης των δύο διαφορετικά µεταγλωττισµένων προγραµµάτων. Βρείτε το µέσο CPI για κάθε πρόγραµµα, µε την προϋπόθεση ότι ο επεξεργαστής έχει χρόνο κύκλου ρολογιού ίσο µε 1 ns. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 10

Άσκηση 1.6 (συνέχεια) Το µέσο CPI είναι ίσο µε: Χρόνος εκτέλεσης x Ρυθµό ρολογιού / Πλήθος εντολών Άρα για την περίπτωση α µε το Μεταγλωττιστή Α έχουµε: CPI = 1,0 x 10 9 / 1x10 9 = 1 Οµοίως για όλες τις περιπτώσεις: Μεταγλωττιστής Α Μεταγλωττιστής Β CPI CPI α. 1,0 1,167 β. 0,8 0,583 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 11

Άσκηση 1.6 (συνέχεια) 1.6.2 Υποθέστε ότι ισχύουν τα µέσα CPI που βρήκατε στο πρόβληµα 1.6.1, αλλά επίσης υποθέστε ότι τα µεταγλωττισµένα προγράµµατα εκτελούνται σε δύο διαφορετικούς επεξεργαστές. Αν οι χρόνοι εκτέλεσης στους δύο επεξεργαστές είναι ίδιοι, πόσο ταχύτερο είναι το ρολόι του επεξεργαστή που εκτελεί τον κώδικα του µεταγλωττιστή Α έναντι του ρολογιού του επεξεργαστή που εκτελεί τον κώδικα του µεταγλωττιστή Β; Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 12

Άσκηση 1.6 (συνέχεια) Αν επιλύσουµε τη βασική εξίσωση ως προς τη συχνότητα (ρυθµό) έχουµε: Ρυθµός ρολογιού = CPI x Πλήθος εντολών / Χρόνος εκτέλεσης Άρα για την περίπτωση α έχουµε Ρυθµός ρολογιού Μ1-Α = CPI Α x Πλήθος εντολών Α / Χρόνος εκτέλεσης Ρυθµός ρολογιού Μ2-Β = CPI Β x Πλήθος εντολών Β / Χρόνος εκτέλεσης ιαιρούµε και προκύπτει Ρυθµός ρολογιού Μ1-Α /Ρυθµός ρολογιού Μ2-Β = = (1,0 x 1,0 x 10 9 ) / (1,167 x 1,2 x 10 9 ) = 0,71 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 13

Άσκηση 1.6 (συνέχεια) 1.6.3 Αναπτύσσεται ένας νέος µεταγλωττιστής που χρησιµοποιεί µόνον 600 εκατοµµύρια εντολές και έχει µέσο CPI ίσο µε 1,1. Ποια είναι η επιτάχυνση που επιτυγχάνει η χρήση του νέου µεταγλωττιστή έναντι της χρήσης του µεταγλωττιστή Α ή του Β στον αρχικό επεξεργαστή του προβλήµατος 1.6.1; Λύνουµε για την περίπτωση α (οµοίως και η β). Επιτάχυνση έναντι του Α = = Χρ.εκτέλεσης Α /Χρ.εκτέλεσης Νέος = = (Εντολές Α xcpi A xχρ.κύκλου) / (Εντολές Νέος xcpi Νέος xχρ.κύκλου) = (1,0 x 10 9 x 1) / (0,6 x 10 9 x 1,1) = 1,52 φορές ταχύτερος είναι ο Νέος µεταγλωττιστής έναντι του Α Οµοίως, ο Νέος µεταγλωττιστής είναι 2,12 φορές ταχύτερος του Β Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 14

Άσκηση 1.6 (συνέχεια) Θεωρήστε δύο διαφορετικές υλοποιήσεις, P1, P2, του ίδιου συνόλου εντολών. Υπάρχουν πέντε κατηγορίες εντολών (Α, Β, Γ,, και Ε) στο σύνολο εντολών. Η υλοποίηση P1 έχει ρυθµό ρολογιού 4 GHz, και η P2 έχει ρυθµό ρολογιού 6 GHz. Ο µέσος αριθµός κύκλων για κάθε κατηγορία εντολών στις P1 και P2 δίνεται στον επόµενο πίνακα. Κατηγορία CPI στην P1 CPI στην P2 α. Α 1 2 Β 2 2 Γ 3 2 4 4 Ε 5 4 β. Α 1 2 Β 1 2 Γ 1 2 4 4 Ε 5 4 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 15

Άσκηση 1.6 (συνέχεια) 1.6.4 Υποθέστε ότι η κορυφαία απόδοση (peak performance) ορίζεται ως ο ταχύτερος ρυθµός στον οποίο ένας υπολογιστής µπορεί να εκτελέσει οποιαδήποτε ακολουθία εντολών. Ποιες είναι οι κορυφαίες αποδόσεις των P1 και P2 εκφρασµένες σε εντολές ανά δευτερόλεπτο; Λύνουµε την περίπτωση α. Όµοια και η β. Για τον P1 πρέπει να εκτελούνται µόνο εντολές της κατηγορίας Α (CPI=1) Τότε η κορυφαία απόδοση είναι 4 x 10 9 εντολές ανά sec (1 εντολή σε κάθε κύκλο ρολογιού µε ρολόι στα 4GHz). Για τον P2 πρέπει να εκτελούνται µόνο εντολές των κατηγοριών Α, Β, Γ (CPI=2) Τότε η κορυφαία απόδοση είναι 3 x 10 9 εντολές ανά sec ( µισή εντολή σε κάθε κύκλο ρολογιού µε ρολόι στα 6 GHz). Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 16

Άσκηση 1.6 (συνέχεια) 1.6.5 Αν το πλήθος των εντολών που εκτελούνται σε ένα συγκεκριµένο πρόγραµµα ισοκατανέµεται στις κατηγορίες εντολών εκτός της κατηγορίας Α, η οποία εµφανίζεται µε διπλάσια συχνότητα από τις άλλες κατηγορίες εντολών του προβλήµατος 1.6.4, πόσο ταχύτερη είναι η P2 από την P1; Χρόνος εκτέλεσης P1 =Εντολές x CPI P1 x Χρ.κύκλου P1 = I x (2k x 1 + k x 2 + k x 3 + k x 4 + k x 5) x 0.25x10-9 sec I x 16k x 0.25x10-9 sec Χρόνος εκτέλεσης P2 =Εντολές x CPI P2 x Χρ.κύκλου P2 = I x (2k x 2 + k x 2 + k x 2 + k x 4 + k x 4) x 0.166x10-9 sec I x 16k x 0.166x10-9 sec Άρα: Χρ.εκτ P1 /Χρ.εκτ P2 =1,506 φορές Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 17

Άσκηση 1.6 (συνέχεια) 1.6.6 Σε ποια συχνότητα έχει η P2 την ίδια απόδοση µε την P1 για το µίγµα εντολών του προβλήµατος 1.6.5; Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 18

Άσκηση 1.7 Ο επόµενος πίνακας δείχνει την αύξηση του ρυθµού ρολογιού και της ισχύος οκτώ γενεών επεξεργαστών Intel σε µια διάρκεια 25 ετών. Επεξεργαστής Ρυθµός ρολογιού Ισχύς 80286 (1982) 12,5 MHz 03,3 W 80386 (1985) 16 MHz 04,1 W 80486 (1989) 25 MHz 04,9 W Pentium (1993) 66 MHz 10,1 W Pentium Pro (1997) 200 MHz 29,1 W Pentium 4 Willamette (2001) 2 GHz 75,3 W Pentium 4 Prescott (2004) 3,6 GHz 103,0 W Core 2 Ketsfield (2007) 2,667 GHz 95,0 W Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 19

Άσκηση 1.7 (συνέχεια) 1.7.1 Ποιος είναι ο γεωµετρικός µέσος των λόγων µεταξύ διαδοχικών γενεών τόσο για το ρυθµό ρολογιού όσο και για την ισχύ; (Ο γεωµετρικός µέσος περιγράφεται στην Ενότητα 1.7.) Γεωµετρικός µέσος των λόγων των ρυθµών ρολογιού µεταξύ διαδοχικών γενεών: (16/12,5 x 25/16 x 66/25 x 200/66 x 2000/200 x 3600/2000 x 2667/3600) 1/7 = 2,15 Οµοίως: Γεωµετρικός µέσος των λόγων ισχύος µεταξύ διαδοχικών γενεών: (4,1/3,3 x 4,9/4,1 x 10,1/4,9 x 29,1/10,1 x 75,3/29,1 x 103,0/75,3 x 95,0/103,0) 1/7 = 1,58 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 20

Άσκηση 1.7 (συνέχεια) 1.7.2 Ποια είναι η µεγαλύτερη σχετική αλλαγή στο ρυθµό ρολογιού και την ισχύ µεταξύ γενεών; Μεγαλύτερος λόγος ρυθµών ρολογιού είναι το 2000 MHz/200 MHz = 10 µεταξύ των Pentium Pro και Pentium 4 Willamette Μεγαλύτερος λόγων ισχύος είναι το 29.1 W/10.1 W = 2.88 µεταξύ των Pentium και Pentium Pro Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 21

Άσκηση 1.7 (συνέχεια) 1.7.3 Πόσο µεγαλύτερος είναι ο ρυθµός ρολογιού και η ισχύς της τελευταίας γενιάς έναντι της πρώτης; Ρυθµός ρολογιού: 2,667 10 9 /12,5 10 6 = 213,36 φορές Ισχύς: 95 W/3.3 W = 28,78 φορές Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 22

Άσκηση 1.7 (συνέχεια) Θεωρήστε τις παρακάτω τιµές τάσης για κάθε γενιά. Επεξεργαστής Τάση 80286 (1982) 5 V 80386 (1985) 5 V 80486 (1989) 5 V Pentium (1993) Pentium Pro (1997) Pentium 4 Willamette (2001) Pentium 4 Prescott (2004) Core 2 Ketsfield (2007) 5 V 3,3 V 1,75 V 1,25 V 1,1 V Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 23

Άσκηση 1.7 (συνέχεια) 1.7.4 Βρείτε τα µέσα χωρητικά φορτία (average capacitive loads), υποθέτοντας ότι η στατική κατανάλωση ισχύος είναι αµελητέα. Λύνουµε ως προς το χωρητικό φορτίο τη σχέση Ισχύς = Χωρ/κό φορτίο x Τάση 2 x Ρυθµός Βρίσκουµε: 80286: C = 0,0105 10 6 F 80386: C = 0,01025 10 6 F 80486: C = 0,00784 10 6 F Pentium: C = 0,00612 10 6 F Pentium Pro: C = 0,0133 10 6 F Pentium 4 Willamette: C = 0,0122 10 6 F Pentium 4 Prescott: C = 0,00183 10 6 F Core 2 Ketsfield: C = 0,0294 10 6 F Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 24

Άσκηση 1.7 (συνέχεια) 1.7.5 Βρείτε τη µεγαλύτερη σχετική αλλαγή στην τάση µεταξύ γενεών. Είναι το 3,3/1,75 = 1,78 µεταξύ του Pentium Pro και του Pentium 4 Willamette Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 25

Άσκηση 1.7 (συνέχεια) 1.7.6 Βρείτε το γεωµετρικό µέσο των λόγων τάσης στις γενιές από τον Pentium και µετά. Pentium προς Pentium Pro: 3,3/5 = 0,66 Pentium Pro προς Pentium 4 Willamette: 1,75/3,3 = 0,53 Pentium 4 Willamette προς Pentium 4 Prescott: 1,25/1,75 = 0,71 Pentium 4 Prescott προς Core 2: 1,1/1,25 = 0,88 Γεωµετρικός µέσος = 0,68 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 26

Άσκηση 1.10 Ο επόµενος πίνακας δείχνει την ανάλυση σε τύπους εντολών µιας δεδοµένης εφαρµογής που εκτελείται σε 1, 2, 4, ή 8 επεξ/στές. Με αυτά τα δεδοµένα, θα διερευνήσετε την επιτάχυνση εφαρµογών σε παράλληλους επεξεργαστές. Πλήθος εντολών ανά επεξεργαστή Φορτώσεις/ αποθηκεύσεις (Load/Store) Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 27 CPI Φορτώσεις/ αποθηκεύσεις (Load/Store) Αριθµητικές (Arithmetic) ιακλαδώσεις (Branch) Αριθµητικές (Arithmetic) α. 1 2560 1280 256 1 4 2 2 1280 640 128 1 4 2 4 640 320 64 1 4 2 8 320 160 32 1 4 2 ιακλαδώσεις (Branch) Πλήθος εντολών ανά επεξεργαστή CPI Φορτώσεις/ Φορτώσεις/ Αριθµητικές (Arithmetic) αποθηκεύσεις (Load/Store) ιακλαδώσεις (Branch) Αριθµητικές (Arithmetic) αποθηκεύσεις (Load/Store) ιακλαδώσεις (Branch) β. 1 2560 1280 256 1 4 2 2 1350 800 128 1 6 2 4 800 600 64 1 9 2 8 600 500 32 1 13 2

Άσκηση 1.10 (συνέχεια) 1.10.1 Ο παραπάνω πίνακας δείχνει το πλήθος εντολών που απαιτούνται ανά επεξεργαστή για να ολοκληρώσει ένα πρόγραµµα σε έναν πολυεπεξεργαστή µε 1, 2, 4, ή 8 επεξεργαστές. Ποιο είναι το συνολικό πλήθος εντολών που εκτελούνται ανά επεξεργαστή; Ποιο είναι το αθροιστικό πλήθος εντολών που εκτελούνται σε όλους τους επεξεργαστές; α. Επεξεργαστές Εντολές ανά επεξεργαστή Συνολικές εντολές 1 4096 4096 2 2048 4096 4 1024 4096 8 512 4096 β. Επεξεργαστές Εντολές ανά επεξεργαστή Συνολικές εντολές 1 4096 4096 2 2278 4556 4 1464 5856 8 1132 9056 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 28

Άσκηση 1.10 (συνέχεια) 1.10.2 Με δεδοµένες τις τιµές του CPI στο δεξιό µέρος του παραπάνω πίνακα, βρείτε το συνολικό χρόνο εκτέλεσης για το πρόγραµµα αυτό σε 1, 2, 4, και 8 επεξεργαστές. Υποθέστε ότι κάθε επεξεργαστής έχει συχνότητα ρολογιού 2 GHz. α. Επεξ/ Εντολές ανά Συνολικές στές επεξεργαστή εντολές Χρόνος εκτέλεσης 1 4096 4096 (2560 x 1 + 1280 x 4 + 256 x 2) x 0,5 ns = 4,096 µs 2 2048 4096 (1280 x 1 + 640 x 4 + 128 x 2) x 0,5 ns = 2,048 µs 4 1024 4096 (640 x 1 + 320 x 4 + 64 x 2) x 0,5 ns = 1,024 µs 8 512 4096 (320 x 1 + 160 x 4 + 32 x 2) x 0,5 ns = 0,512 µs β. Επεξ/ Εντολές ανά Συνολικές στές επεξεργαστή εντολές Χρόνος εκτέλεσης 1 4096 4096 (2560 x 1 + 1280 x 4 + 256 x 2) x 0,5 ns = 4,096 µs 2 2278 4556 (1350 x 1 + 800 x 6 + 128 x 2) x 0,5 ns = 3,203 µs 4 1464 5856 (800 x 1 + 600 x 9 + 64 x 2) x 0,5 ns = 3,164 µs 8 1132 9056 (600 x 1 + 500 x 13 + 32 x 2) x 0,5 ns = 3,582 µs Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 29

Άσκηση 1.10 (συνέχεια) 1.10.3 Αν το CPI των αριθµητικών εντολών διπλασιαζόταν, ποια θα ήταν η επίδραση στο χρόνο εκτέλεσης του προγράµµατος σε 1, 2, 4, ή 8 επεξεργαστές; α. Επεξ/ Εντολές ανά Συνολικές στές επεξεργαστή εντολές Χρόνος εκτέλεσης 1 4096 4096 (2560 x 2 + 1280 x 4 + 256 x 2) x 0,5 ns = 5,376 µs 2 2048 4096 (1280 x 2 + 640 x 4 + 128 x 2) x 0,5 ns = 2,688 µs 4 1024 4096 (640 x 2 + 320 x 4 + 64 x 2) x 0,5 ns = 1,334 µs 8 512 4096 (320 x 2 + 160 x 4 + 32 x 2) x 0,5 ns = 0,672 µs β. Επεξ/ Εντολές ανά Συνολικές στές επεξεργαστή εντολές Χρόνος εκτέλεσης 1 4096 4096 (2560 x 2 + 1280 x 4 + 256 x 2) x 0,5 ns = 5,376 µs 2 2278 4556 (1350 x 2 + 800 x 6 + 128 x 2) x 0,5 ns = 3,878 µs 4 1464 5856 (800 x 2 + 600 x 9 + 64 x 2) x 0,5 ns = 3,564 µs 8 1132 9056 (600 x 2 + 500 x 13 + 32 x 2) x 0,5 ns = 3,882 µs Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 30

Άσκηση 1.10 (συνέχεια) Ο επόµενος πίνακας δείχνει το πλήθος των εντολών ανά πυρήνα επεξεργαστή σε έναν πολυπύρηνο επεξεργαστή, και επίσης το µέσο CPI για την εκτέλεση του προγράµµατος σε 1, 2, 4, ή 8 πυρήνες. Με αυτά τα δεδοµένα, θα διερευνήσετε την επιτάχυνση των εφαρµογών σε πολυπύρηνους επεξεργαστές. α. Πυρήνες ανά επεξεργαστή Εντολές ανά πυρήνα Μέσο CPI 1 1,0 x 10 10 1,2 2 5,0 x 10 9 1,3 4 2,5 x 10 9 1,5 8 1,25 x 10 9 1,8 β. Πυρήνες ανά επεξεργαστή Εντολές ανά πυρήνα Μέσο CPI 1 1,0 x 10 10 1,2 2 5,0 x 10 9 1,2 4 2,5 x 10 9 1,2 8 1,25 x 10 9 1,2 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 31

Άσκηση 1.10 (συνέχεια) 1.10.4 Υποθέτοντας συχνότητα ρολογιού 3 GHz, ποιος είναι ο χρόνος εκτέλεσης του προγράµµατος µε τη χρήση 1, 2, 4, ή 8 πυρήνων; α. Πυρήνες ανά Εντολές ανά Μέσο επεξεργαστή πυρήνα CPI Χρόνος εκτέλεσης 1 1,0 x 10 10 1,2 (1,0 x 10 10 x 1,2) / (3 x 10 9 ) = 4 sec 2 5,0 x 10 9 1,3 (5,0 x 10 9 x 1,3) / (3 x 10 9 ) = 2,167 sec 4 2,5 x 10 9 1,5 (2,5 x 10 9 x 1,5) / (3 x 10 9 ) = 1,25 sec 8 1,25 x 10 9 1,8 (1,25 x 10 9 x 1,8) / (3 x 10 9 ) = 0,768 sec β. Πυρήνες ανά Εντολές ανά επεξεργαστή πυρήνα Μέσο CPI 1 1,0 x 10 10 1,2 (1,0 x 10 10 x 1,2) / (3 x 10 9 ) = 4 sec 2 5,0 x 10 9 1,2 (5,0 x 10 9 x 1,2) / (3 x 10 9 ) = 2 sec 4 2,5 x 10 9 1,2 (2,5 x 10 9 x 1,2) / (3 x 10 9 ) = 1 sec 8 1,25 x 10 9 1,2 (1,25 x 10 9 x 1,2) / (3 x 10 9 ) = 0,5 sec Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 32

Άσκηση 1.10 (συνέχεια) 1.10.5 Υποθέστε ότι η κατανάλωση ισχύος ενός πυρήνα επεξεργαστή µπορεί να περιγραφεί από την επόµενη εξίσωση 2 Ισχύς = 5, 0mA Τάση MHz όπου η τάση λειτουργίας του επεξεργαστή περιγράφεται από την επόµενη εξίσωση Τάση = 1 Συχνότητα + 0, 4 5 και η συχνότητα µετράται σε GHz. Έτσι, στα 5 GHz, η τάση θα ήταν 1,4 V. Βρείτε την κατανάλωση ισχύος όταν το πρόγραµµα εκτελείται σε 1, 2, 4, και 8 πυρήνες, υποθέτοντας ότι κάθε πυρήνας λειτουργεί σε συχνότητα ρολογιού 3 GHz. Παρόµοια, βρείτε την κατανάλωση ισχύος όταν το πρόγραµµα εκτελείται σε 1, 2, 4, ή 8 πυρήνες, υποθέτοντας ότι κάθε πυρήνας λειτουργεί στα 500 MHz. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 33

Άσκηση 1.10 (συνέχεια) Ίδια και στο α και στο β. α. β. Πυρήνες Ισχύς (W) ανά πυρήνα στα 3 GHz Ισχύς (W) ανά πυρήνα στα 500 MHz Συνολική ισχύς στα 3 GHz Συνολική ισχύς στα 500 MHz 1 5 1,25 5 1,25 2 5 1,25 10 2,50 4 5 1,25 20 5 8 5 1,25 40 10 Πυρήνες Ισχύς (W) ανά πυρήνα στα 3 GHz Ισχύς (W) ανά πυρήνα στα 500 MHz Συνολική ισχύς στα 3 GHz Συνολική ισχύς στα 500 MHz 1 5 1,25 5 1,25 2 5 1,25 10 2,50 4 5 1,25 20 5 8 5 1,25 40 10 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 34

Άσκηση 1.10 (συνέχεια) 1.10.6 Βρείτε την ενέργεια που απαιτείται για να εκτελεστεί το πρόγραµµα σε 1, 2, 4, και 8 πυρήνες, υποθέτοντας ότι κάθε πυρήνας έχει συχνότητα ρολογιού 3 GHz και 500 MHz. Χρησιµοποιήστε τις εξισώσεις κατανάλωσης ισχύος από το πρόβληµα 1.10.5. Ισχύς = Ενέργεια / Χρόνος (W = J/s) α. Πυρήνες ανά επεξεργαστή β. Πυρήνες ανά επεξεργαστή Χρόνος εκτέλεσης Ισχύς στα 3 GHz Ισχύς στα 500 MHz Ενέργεια στα 3 GHz 1 4 sec 5 W 1,25 W 20 J 5 J 2 2,167 sec 10 W 2,50 W 21,67 J 5,42 J 4 1,25 sec 20 W 5 W 25 J 6,25 J 8 0,768 sec 40 W 10 W 30,72 7,68 J Ενέργεια στα 500 MHz Ισχύς στα 3 GHz Ισχύς στα 500 MHz 1 4 sec 5 W 1,25 W 20 J 5 J 2 2 sec 10 W 2,50 W 20 J 5 J 4 1 sec 20 W 5 W 20 J 5 J 8 0,5 sec 40 W 10 W 20 J 5 J Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 35

Άσκηση 1.11 Ο επόµενος πίνακας παρουσιάζει κατασκευαστικά δεδοµένα για διάφορους επεξεργαστές. ιάµετρος πλακιδίου Κύβοι ανά πλακίδιο Ατέλειες (defects) ανά µονάδα επιφάνειας Κόστος ανά πλακίδιο α. 15 cm 90 0,018 ατέλειες ανά cm 2 10 β. 25 cm 140 0,024 ατέλειες ανά cm 2 20 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 36

Άσκηση 1.11 (συνέχεια) 1.11.1 Βρείτε την εσοδεία (yield). Εσοδεία= (1+ 1 Ατέλειες ανά µονάδα επιφανείας Επιφάνεια κύβου/2)) 2 Επιφάνεια (εµβαδόν) πλακιδίου = π x (διάµετρος/2) 2 α. 176,7 cm 2 β. 490,9 cm 2 Επιφάνεια (εµβαδόν) κύβου = = Επιφάνεια πλακιδίου / Κύβοι ανά πλακίδιο α. 1,96 cm 2 β. 3,51 cm 2 Εσοδεία: α. 0,966 και β. 0,921 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 37

Άσκηση 1.11 (συνέχεια) 1.11.2 Βρείτε το κόστος ανά κύβο. Κόστος ανά πλακίδιο Κόστος ανά κύβο= Κύβοι ανά πλακίδιο Εσοδεία α. 0,115 ανά κύβο β. 0,155 ανά κύβο Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 38

Άσκηση 1.11 (συνέχεια) 1.11.3 Αν ο αριθµός των κύβων ανά πλακίδιο αυξηθεί κατά 10% και οι ατέλειες ανά µονάδα επιφάνειας αυξηθούν κατά 15%, βρείτε την επιφάνεια του κύβου και την εσοδεία. Όµοια µε προηγούµενα Νέα επιφ.κύβου: α. 1,79 cm 2 και β. 3,19 cm 2 Νέα εσοδεία: α. 0,964 και β. 0,917 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 39

Άσκηση 1.11 (συνέχεια) Υποθέστε ότι, µε την εξέλιξη της τεχνολογίας κατασκευής ηλεκτρονικών διατάξεων, η εσοδεία ποικίλει όπως φαίνεται στον πίνακα. 1.11.4 Βρείτε τις ατέλειες ανά µονάδα επιφάνειας για κάθε τεχνολογία, για επιφάνεια κύβου ίση µε 200 mm 2. Και βρίσκουµε, Τ1 Τ2 Τ3 Τ4 εσοδεία 0,85 0,89 0,92 0,95 1 Εσοδεία= (1+ Ατέλειες ανά µονάδα επιφανείας Επιφάνεια κύβου/2)) Ατέλειες ανά µονάδα επιφάνειας: Τ1 = 0,0846 ανά cm 2 T2 = 0,0600 ανά cm 2 Τ3 = 0,0426 ανά cm 2 T4 = 0,0259 ανά cm 2 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 40 2

Άσκηση 1.12 Στον επόµενο πίνακα µπορείτε να δείτε τα αποτελέσµατα µετροπρογραµµάτων SPEC2006 που εκτελούνται σε έναν AMD Barcelona. Όνοµα Πλήθος εντολών x 10 9 Χρόνος εκτέλεσης (seconds) Χρόνος αναφοράς (seconds) α. perl 2118 500 9770 β. mcf 336 1200 9120 1.12.1 Βρείτε το CPI αν ο χρόνος κύκλου ρολογιού είναι 0,333 ns. 1.12.2 Βρείτε το SPEC ratio. 1.12.3 Γι αυτά τα δύο µετροπρογράµµατα, βρείτε το γεωµετρικό µέσο. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 41

Άσκηση 1.12 (συνέχεια) 1.12.1 Βρείτε το CPI αν ο χρόνος κύκλου ρολογιού είναι 0,333 ns. Χρόνος = Εντολές x CPI x Κύκλος ρολογιού Άρα CPI perl =0,71 και CPI mcf =10,71 1.12.2 Βρείτε το SPEC ratio. SPECratio perl =Χρ.αναφ. perl /Χρ.εκτελ. perl =19,54 SPECratio mfc =Χρ.αναφ. mfc /Χρ.εκτελ. mcf =7,60 1.12.3 Γι αυτά τα δύο µετροπρογράµµατα, βρείτε το γεωµετρικό µέσο. Γεωµετρικός µέσος = (19,54 x 7,60) 1/2 =12,19 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 42

Άσκηση 1.12 (συνέχεια) Ο επόµενος πίνακας δείχνει δεδοµένα και για άλλα µετροπρογράµµατα. Όνοµα CPI Ρυθµός ρολογιού SPECratio α. sjeng 0,96 4 GHz 14,5 β. omnetpp 2,94 4 GHz 9,1 1.12.4 Βρείτε την αύξηση του χρόνου CPU αν το πλήθος των εντολών του µετροπρογράµµατος αυξηθεί κατά 10% χωρίς να επηρεαστεί το CPI. 1.12.5 Βρείτε την αύξηση του χρόνου CPU αν το πλήθος των εντολών του µετροπρογράµµατος αυξηθεί κατά 10% και το CPI αυξηθεί κατά 5%. 1.12.6 Βρείτε την αλλαγή στο SPECratio για την αλλαγή που περιγράφεται στο πρόβληµα 1.12.5. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 43

Άσκηση 1.12 (συνέχεια) 1.12.4 Βρείτε την αύξηση του χρόνου CPU αν το πλήθος των εντολών του µετροπρογράµµατος αυξηθεί κατά 10% χωρίς να επηρεαστεί το CPI. Αφού δεν αλλάζει η συχνότητα και το CPI η αύξηση των εντολών οδηγεί σε ανάλογη αύξηση 10% στο χρόνο εκτέλεσης 1.12.5 Βρείτε την αύξηση του χρόνου CPU αν το πλήθος των εντολών του µετροπρογράµµατος αυξηθεί κατά 10% και το CPI αυξηθεί κατά 5%. Εφαρµόζοντας την εξίσωση απόδοσης µε αύξηση 10% στις εντολές και αύξηση 5% στο CPI βρίσκουµε ότι ο χρόνος CPU θα αυξηθεί 15,5% Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 44

Άσκηση 1.12 (συνέχεια) 1.12.6 Βρείτε την αλλαγή στο SPECratio για την αλλαγή που περιγράφεται στο πρόβληµα 1.12.5. Στο α (πρόγραµµα sjeng) το SPECratio από 14,5 θα γίνει 14,5/1,155 = 12,55 (αφού ο χρόνος εκτέλεσης αυξάνεται κατά 15,5%. Οµοίως στο β (πρόγραµµα omnetpp) το SPECratio από 9,1 θα γίνει 9,1/1,155 = 7,88 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 45

Άσκηση 1.14 Η Ενότητα 1.8 αναφέρει ως παγίδα τη χρήση ενός υποσυνόλου της εξίσωσης της απόδοσης ως µέτρου της απόδοσης. Για να το αποδείξουµε, θεωρήστε τα επόµενα δεδοµένα για την εκτέλεση συγκεκριµένης ακολουθίας εντολών η οποία αποτελείται από 10 6 εντολές, σε διαφορετικούς επεξεργαστές. Επεξεργαστής Ρυθµός ρολογιού CPI P1 4 GHz 1,25 P2 3 GHz 0,75 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 46

Άσκηση 1.14 (συνέχεια) 1.14.1 Μια συνηθισµένη πλάνη είναι να θεωρήσουµε ότι ο υπολογιστής µε το µεγαλύτερο ρυθµό ρολογιού έχει την καλύτερη απόδοση. Ελέγξτε αν αυτό αληθεύει για τους P1 και P2. Χρόνος εκτέλεσης P1 = I x CPI P1 / Ρυθµός P1 = 0,3125 msec Χρόνος εκτέλεσης P2 = I x CPI P2 / Ρυθµός P2 = 0,25 msec Άρα ταχύτερα εκτελεί το πρόγραµµα ο P2 που έχει µικρότερο ρυθµό ρολογιού Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 47

Άσκηση 1.14 (συνέχεια) 1.14.2 Μια άλλη πλάνη είναι να θεωρήσουµε ότι ο επεξεργαστής που εκτελεί το µεγαλύτερο πλήθος εντολών θα χρειάζεται µεγαλύτερο χρόνο CPU. Θεωρήστε ότι ο επεξεργαστής P1 εκτελεί µια ακολουθία από 10 6 εντολές και ότι το CPI των επεξεργαστών P1 και P2 δεν αλλάζει, και προσδιορίστε τον αριθµό των εντολών που µπορεί να εκτελέσει ο P2, στον ίδιο χρόνο που ο P1 χρειάζεται για να εκτελέσει 10 6 εντολές. Ο P1 χρειάζεται όπως είδαµε 0,3125 ms για να εκτελέσει τις 10 6 εντολές. Για τον ίδιο χρόνο εκτέλεσης θα βρούµε τις εντολές του P2 Χρόνος εκτέλεσης P2 = I P2 x CPI P2 / Ρυθµός P2 άρα Ι P2 = 1,25 x 10 6, δηλ. ο P2 εκτελεί κατά 25% περισσότερες εντολές για τον ίδιο χρόνο εκτέλεσης. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 48

Άσκηση 1.14 (συνέχεια) 1.14.3 Μια συνήθης πλάνη είναι η χρήση του µέτρου MIPS (millions of instructions per second εκατοµµύρια εντολών ανά δευτερόλεπτο) για τη σύγκριση της απόδοσης δύο διαφορετικών επεξεργαστών, και η άποψη ότι ο επεξεργαστής µε το µεγαλύτερο MIPS έχει την καλύτερη απόδοση. Ελέγξτε αν αυτό αληθεύει για τους P1 και P2 (λύνουµε µε τα δεδοµένα της 1.14.1). MIPS P1 = Εντολές P1 / (Χρ.εκτέλεσης P1 x 10 6 ) = = 10 6 / (0,3125 x 10-3 x 10 6 ) = 3200 MIPS MIPS P2 = Εντολές P2 / (Χρ.εκτέλεσης P2 x 10 6 ) = = 10 6 / (0,25 x 10-3 x 10 6 ) = 4000 MIPS Άρα ισχύει Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 49

Άσκηση 1.14 (συνέχεια) Ένα άλλο σύνηθες µέτρο απόδοσης είναι το MFLOPS (million of floating-point operations per second εκατοµµύρια πράξεων κινητής υποδιαστολής ανά δευτερόλεπτο), που ορίζεται ως MFLOPS = = (Πλήθος πράξεων κιν.υπoδ/λης) / (χρόνος εκτέλεσης x 10 6 ) αλλά αυτό το µέγεθος έχει τα ίδια προβλήµατα µε το MIPS. Θεωρήστε τα προγράµµατα στον επόµενο πίνακα, που εκτελούνται σε έναν επεξεργαστή µε ρυθµό ρολογιού 3 GHz. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 50

Άσκηση 1.14 (συνέχεια) Αριθµός εντολών Εντολές Load/Store Εντολές Κ.Υ. Εντολές διακλάδωσης CPI των Load/Store 1.14.4 Βρείτε τις τιµές MFLOPS για τα προγράµµατα. 1.14.5 Βρείτε τις τιµές MIPS για τα προγράµµατα. CPI των διακλαδώσεων CPI των Κ.Υ. α. 10 6 50% 40% 10% 0,75 1 1,5 β. 3 10 6 40% 40% 20% 1,25 0,70 1,25 1.14.6 Βρείτε την απόδοση των προγραµµάτων και συγκρίνετε µε τα MIPS και τα MFLOPS. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 51

Άσκηση 1.14 (συνέχεια) Χρ.εκτέλεσης(α) = 10 6 x (0,50*0,75 + 0,40*1 + 0,10*1,5) / 3 x 10 9 = 0,30833 msec Χρ.εκτέλεσης(β) = 3 x 10 6 x (0,40*1,25 + 0,40*0,70 + 0,20*1,25) / 3 x 10 9 = 1,03 msec MIPS(α) = Εντολές(α) / Χρ.εκτέλεσης(α) x 10 6 = = 3243 MIPS MIPS(β) = Εντολές(β) / Χρ.εκτέλεσης(β) x 10 6 = = 2913 MIPS MFLOPS(α) = Εντολές Κ.Υ.(α) / Χρ.εκτέλεσης(α) x 10 6 = 1297 MFLOPS MIPS(β) = Εντολές Κ.Υ.(β) / Χρ.εκτέλεσης(β) x 10 6 = 1165 MFLOPS Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 52

Άσκηση 1.16 Άλλη µία παγίδα, που σχετίζεται µε την εκτέλεση προγραµµάτων σε πολυεπεξεργαστικά συστήµατα, είναι να αναµένουµε βελτίωση της απόδοσης βελτιώνοντας µόνο το χρόνο εκτέλεσης ενός µέρους των ρουτινών. Ο επόµενος πίνακας δείχνει το χρόνο εκτέλεσης πέντε ρουτινών ενός προγράµµατος που εκτελούνται σε διαφορετικό πλήθος επεξεργαστών. Πλήθος επεξ/στών Ρουτίνα Α (ms) Ρουτίνα B (ms) Ρουτίνα Γ (ms) Ρουτίνα (ms) Ρουτίνα Ε (ms) α. 2 20 80 10 70 5 β. 16 4 14 2 12 2 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 53

Άσκηση 1.16 (συνέχεια) 1.16.1 Βρείτε το συνολικό χρόνο εκτέλεσης, και κατά πόσο µειώνεται αν ο χρόνος των ρουτινών Α, Γ, και Ε βελτιωθεί κατά 15%. α. Για καλύτερη εξισορρόπηση φορτίου (load balancing) υποθέτουµε ότι οι ρουτίνες Β και Γ εκτελούνται στον έναν επεξεργαστή και οι ρουτίνες Α,, και Ε στο δεύτερο. Ο συνολικός χρόνος εκτέλεσης είναι ίσος µε: Τ = max{β+γ, Α+ +Ε} = max{90, 95} = 95 β. Αφού έχουµε 16 επεξεργαστές οι πέντε ρουτίνες εκτελούνται σε ξεχωριστό επεξεργαστή η καθεµία. Άρα: Τ = max{a,β,γ,,ε} = max{4, 14, 2, 12, 2} = 14 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 54

Άσκηση 1.16 (συνέχεια) 1.16.1 (συνέχεια) Αν ο χρόνος των Α, Γ, Ε µειωθεί κατά 15% τότε έχουµε: α. Τ Α = 17, Τ Β =80, Τ Γ =8,5, Τ =70, Τ Ε =4,25 Τότε η καλύτερη εκτέλεση είναι και πάλι στον έναν επεξεργαστή οι ρουτίνες Β, Γ και στον άλλο οι ρουτίνες Α,,Ε. Και: Τ = max{β+γ, Α+ +Ε} = max{88.5, 91.25} = 91.25 και Επιτάχυνση α =95/91.25 = 1.04 δηλαδή 4% β. Στους 16 επεξεργαστές οι νέοι χρόνοι των ρουτινών θα είναι Τ Α = 3.4, Τ Β =14, Τ Γ =1.7, Τ =12, Τ Ε =1,7 Ο νέος χρόνος εκτέλεσης είναι το µέγιστο δηλαδή το 14 και συνεπώς δεν υπάρχει βελτίωση Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 55

Άσκηση 1.16 (συνέχεια) 1.16.2 Κατά πόσο µειώνεται ο συνολικός χρόνος αν η ρουτίνα Β βελτιωθεί κατά 10%; α. Ο νέος χρόνος εκτέλεσης της Β θα είναι 72. Έτσι προκύπτει καλύτερη οµαδοποίηση: Β+Γ+Ε=87 µονάδες και Α+ =90 µονάδες. Και ο νέος χρόνος είναι 90 µονάδες. Επιτάχυνση 95/90= 1.055 β. Οµοίως ο συνολικός χρόνος θα γίνει 12.6 (όσο και της Β) άρα επιτάχυνση 14/12.6 = 1,111 Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 56

Άσκηση 1.16 (συνέχεια) 1.16.3 Κατά πόσο µειώνεται ο συνολικός χρόνος αν η ρουτίνα βελτιωθεί κατά 10%; α. Ο νέος χρόνος της θα είναι 63. Και η οµαδοποίηση Α+ +Ε=88 και Β+Γ=90 δίνει το ίδιο αποτέλεσµα: µέγιστο χρόνο 90 και επιτάχυνση έναντι της αρχικής ίση µε 95/90= 1.055 β. ε δίνει καµία βελτίωση αφού η ρουτίνα δεν είναι η πιο αργή. Ο χρόνος παραµένει ίσος µε 14 (όσο της Β). Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 57

Άσκηση 1.16 (συνέχεια) Ο χρόνος εκτέλεσης σε ένα πολυεπεξεργαστικό σύστηµα µπορεί να διαιρεθεί σε υπολογιστικό χρόνο για τις ρουτίνες συν το χρόνο δροµολόγησης (routing) που δαπανάται κατά την αποστολή δεδοµένων από έναν επεξεργαστή σε έναν άλλο. Θεωρήστε το χρόνο εκτέλεσης και το χρόνο δροµολόγησης που δίνονται στον επόµενο πίνακα. Στη περίπτωση αυτή, ο χρόνος δροµολόγησης είναι ένα σηµαντικό τµήµα του συνολικού χρόνου. Πλήθος επεξ/στών Ρουτίνα Α (ms) Ρουτίνα B (ms) Ρουτίνα Γ (ms) Ρουτίνα (ms) Ρουτίνα Ε (ms) 2 20 78 9 65 4 11 4 12 44 4 34 2 13 8 1 23 3 19 3 17 16 4 13 1 10 2 22 32 2 5 1 5 1 23 64 1 3 0,5 1 1 26 ροµολόγηση (ms) Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 58

Άσκηση 1.16 (συνέχεια) 1.16.4 Για κάθε διπλασιασµό του πλήθους των επεξεργαστών, προσδιορίστε το λόγο του νέου προς τον παλιό χρόνο υπολογισµού, και το λόγο του νέου προς τον παλιό χρόνο δροµολόγησης. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 59

Άσκηση 1.16 (συνέχεια) 1.16.5 Χρησιµοποιώντας τους γεωµετρικούς µέσους των λόγων, εφαρµόστε προέκταση (extrapolation) για να βρείτε το χρόνο υπολογισµού και το χρόνο δροµολόγησης σε ένα σύστηµα µε 128 επεξεργαστές. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 60

Άσκηση 1.16 (συνέχεια) 1.16.6 Βρείτε το χρόνο υπολογισµού και το χρόνο δροµολόγησης για ένα σύστηµα µε έναν επεξεργαστή. Ασκήσεις Κεφάλαιο 1 Αφηρηµένες έννοιες και τεχνολογία υπολογιστών 61