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

Σχετικά έγγραφα
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

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

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

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

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

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

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

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

Ενδεικτικά Θέματα Στατιστικής ΙΙ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

Κάζε functional unit ρξεζηκνπνηείηαη κηα θνξά ζε θάζε θύθιν: αλάγθε γηα πνιιαπιό hardware = θόζηνο πινπνίεζεο!

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

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

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

ΠΛΗ36. Άσκηση 1. Άσκηση 2. Οη δηεπζύλζεηο ησλ 4 σλ ππνδηθηύσλ είλαη νη αθόινπζεο. Υπνδίθηπν Α: /27 Υπνδίθηπν Β:

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

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γευηέρα 11 Ηουνίου 2018 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

Η/Υ A ΤΑΞΕΩΣ ΑΕ Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ

ΜΕΛΕΣΗ E.O.K. ΜΕ ΑΙΘΗΣΗΡΑ ΘΕΗ

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

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

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

ΚΔΦ. 2.4 ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ

ΓΔΧΜΔΣΡΙΑ ΓΙΑ ΟΛΤΜΠΙΑΓΔ

ΔΠΙΣΡΟΠΗ ΓΙΑΓΩΝΙΜΩΝ 74 ος ΠΑΝΔΛΛΗΝΙΟ ΜΑΘΗΣΙΚΟ ΓΙΑΓΩΝΙΜΟ ΣΑ ΜΑΘΗΜΑΣΙΚΑ Ο ΘΑΛΗ 19 Οκηωβρίοσ Δνδεικηικές λύζεις

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

ΜΑΘΗΜΑΤΙΚΑ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΦΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ Β ΛΥΚΔΙΟΥ ΤΔΣΤ(1) ΣΤΑ ΓΙΑΝΥΣΜΑΤΑ

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Αζθήζεηο Caches

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

1. Να ζεκεηώζεηε πνηα από ηηο επόκελεο ηαρύηεηεο είλαη κεγαιύηεξε. Α. π 1 = 30m/s Β. π 2 = 0.02km/s Γ. π 3 = 36000m/h Γ. π 4 = 144km/h.

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

Μνλνδηάζηαηνη Πίλαθεο Λπκέλεο Αζθήζεηο. Άζθεζε 1. Πνηά ζα είλαη ηα πεξηερόκελα ηνπ πίλαθα Α κεηά ηελ εθηέιεζε ηνπ παξαθάησ αιγνξίζκνπ;

Δσναμική Δρομολόγηζη Ενηολών (Dynamic Scheduling)

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W.

Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο:

O επεξεπγαζηήρ: Η δίοδορ δεδομένων (datapath) θαη ε μονάδα ελέγσος (control)

ΘΔΜΑ 1 ο Μονάδες 5,10,10

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο

Αντισταθμιστική ανάλυση

ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 27 ΜΑΪΟΥ 2013

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP

Intel Accelerate Your Code

6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ

ΣΥΣΤΗΜΑΤΑ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 1. Να ιπζνύλ ηα ζπζηήκαηα. 1 0,3x 0,1y x 3 3x 4y 2 4x 2y ( x 1) 6( y 1) (i) (ii)

ΔΝΓΔΙΚΣΙΚΔ ΛΤΔΙ ΣΑ ΜΑΘΗΜΑΣΙΚΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ 2017

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γεσηέρα 10 Ηοσνίοσ 2019 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

Γ ΣΑΞΖ ΔΝΗΑΗΟΤ ΛΤΚΔΗΟΤ ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΘΔΣΗΚΩΝ ΚΑΗ ΟΗΚΟΝΟΜΗΚΩΝ ΠΟΤΓΩΝ ΤΝΑΡΣΖΔΗ ΟΡΗΑ ΤΝΔΥΔΗΑ (έως Θ.Bolzano) ΘΔΜΑ Α

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

Constructors and Destructors in C++

Αιγόξηζκνη Δνκή επηινγήο. Απιή Επηινγή ύλζεηε Επηινγή. Εηζαγσγή ζηηο Αξρέο ηεο Επηζηήκεο ησλ Η/Τ. introcsprinciples.wordpress.

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ

Η αξρή ζύλδεζεο Client-Server

ΕΞΙΣΩΣΕΙΣ. Α. Πρωτοβάθμιεσ Εξιςώςεισ. Β. Διερεφνηςη Εξιςώςεων. 1x είναι αδφνατθ. x 1 x 1. Άλγεβρα Α Λυκείου

Μηα ζπλάξηεζε κε πεδίν νξηζκνύ ην Α, ζα ιέκε όηη παξνπζηάδεη ηοπικό μέγιζηο ζην, αλ ππάξρεη δ>0, ηέηνην ώζηε:

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ

Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή. Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε.

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

Χαξαθηήξεο δηαηξεηόηεηαο ΜΚΓ ΔΚΠ Αλάιπζε αξηζκνύ ζε γηλόκελν πξώησλ παξαγόλησλ

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access)

Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα

1. Η απιή αξκνληθή ηαιάλησζε πνπ εθηειεί έλα κηθξό ζώκα κάδαο m = 1 kg έρεη πιάηνο Α = 20 cm θαη

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84

Έκδοζη /10/2014. Νέα λειηοσργικόηηηα - Βεληιώζεις

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Εισαγωγή στη Φωτογραυία. Χριζηάκης Σαζεΐδης - EFIAP

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα.

Φςζική Πποζαναηολιζμού Γ Λςκείος. Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

Transcript:

ΔΘΝΙΚΟ ΜΔΣΟΒΙΟ ΠΟΛΤΣΔΥΝΔΙΟ ΥΟΛΗ ΗΛΔΚΣΡΟΛΟΓΩΝ ΜΗΥΑΝΙΚΩΝ ΚΑΙ ΜΗΥΑΝΙΚΩΝ ΤΠΟΛΟΓΙΣΩΝ ΣΟΜΔΑ ΣΔΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΤΠΟΛΟΓΙΣΩΝ Δ Ρ Γ Α Σ Η Ρ Ι Ο Τ Π Ο Λ Ο Γ Ι Σ Ι Κ Ω Ν ΤΣ Η Μ ΑΣ Ω Ν w w w. c s l a b. e c e. n t u a. g r ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΣΑ ΑΡΥΙΣΕΚΣΟΝΙΚΗ ΤΠΟΛΟΓΙΣΩΝ Δμεηάζεηο Ινπιίνπ 2012 Γηάξθεηα 2:45 ώξεο Οη εμεηάζεηο ζα πξαγκαηνπνηεζνύλ ΥΩΡΙ ηελ παξνπζία βηβιίσλ, βνεζεκάησλ ή άιινπ είδνπο ζεκεηώζεσλ. Σν κόλν πνπ επηηξέπεηαη λα έρεηε καδί ζαο είλαη έλα θύιιν Α4 ζην νπνίν κπνξείηε λα έρεηε γξάςεη ό,ηη έρεηε θξίλεη πην ζεκαληηθό γηα ην κάζεκα θαη ζέιεηε λα ην έρεηε σο βνήζεκά ζαο. Απαγνξεύεηαη ε αληαιιαγή νπνηνπδήπνηε αληηθεηκέλνπ θαηά ηελ ώξα ηεο εμέηαζεο, νύηε θαη ησλ θύιισλ Α4 πνπ είλαη αηνκηθά. Θέμα 1ο (20%) Α. Δμεγήζηε γηα πνην ιόγν νη αξρηηεθηνληθέο πνπ ρξεζηκνπνηνύλ ηνλ αιγόξηζκν Tomasulo ρξεηάδνληαη θάπνην κεραληζκό πξόβιεςεο δηαθιαδώζεσλ. O Tomasulo πινπνηεί out-of-order εθηέιεζε εληνιώλ πξνθεηκέλνπ λα βειηηώζεη ηελ απόδνζε ηνπ ζπζηήκαηνο. Απηό επηηπγράλεηαη δξνκνινγώληαο εληνιέο πνπ κε βάζε ην program order αθνινπζνύλ άιιεο, νη νπνίεο όκσο είλαη blocked πεξηκέλνληαο ην απνηέιεζκα άιισλ πξνεγνύκελσλ εληνιώλ. Απαηηείηαη ινηπόλ ε δξνκνιόγεζε πνιιώλ εληνιώλ πνπ βξίζθνληαη πην κπξνζηά ζην instruction stream. Έηζη όηαλ ζπλαληνύλ έλα branch απαηηείηαη έλαο κεραληζκόο πξόβιεςεο ώζηε λα επηιεγεί ην path από ην νπνίν ζα έξζνπλ νη επόκελεο εληνιέο. Γηαθνξεηηθά, αλ δελ ππήξρε ν κεραληζκόο πξόβιεςεο, ζα έπξεπε λα πεξηκέλνπλ ην απνηέιεζκα ηνπ branch πεξηνξίδνληαο έηζη ηα νθέιε ηεο ooo εθηέιεζεο. Β. Σαο αλαζέηνπλ λα ζρεδηάζεηε έλαλ επεμεξγαζηή πνπ ζα πινπνηεί έλα ISA ην νπνίν νξίδεη Κ θαηαρσξεηέο (architecture registers). Γηα λα βειηηώζεηε ηελ απόδνζε, απνθαζίδεηε λα ζρεδηάζεηε έλα out-of-order επεμεξγαζηή πνπ ζα πινπνηεί ηνλ αιγόξηζκν Tomasulo ρξεζηκνπνηώληαο έλα Reorder Buffer Ν ζέζεσλ θαζώο θαη M Reservation Stations. Πνηνο είλαη ν κέγηζηνο αξηζκόο θπζηθώλ θαηαρσξεηώλ (physical registers) πνπ ζα ελζσκαηώζεηε ζην ζρέδην ζαο; Καηαξράο, ρξεηαδόκαζηε ηνπιάρηζηνλ όζνπο νξίδεη ην ISA, δειαδή Κ. Δθόζνλ ην ζύζηεκα ρξεζηκνπνηεί έλα ROB Ν ζέζεσλ κπνξνύκε λα έρνπκε ην πνιύ Ν εληνιέο in-flight (λα εθηεινύληαη ηαπηόρξνλα) νη νπνίεο γξάθνπλ ζε θάπνην θαηαρσξεηή. Γηα λα κπνξνύκε ινηπόλ λα θάλνπκε ην register renaming απαηηνύληαη N έμηξα θπζηθνί θαηαρσξεηέο. physical registers N + K Γ. Υπνζέζηε κηα αξρηηεθηνληθή πνπ πινπνηεί ηνλ αιγόξηζκν Tomasulo κε ρξήζε Reorder Buffer. Σε πνην ζηάδην πξαγκαηνπνηνύληαη ηα loads (δει. έξρεηαη ζηνλ επεμεξγαζηή από ηελ κλήκε ε ηηκή πνπ ζα ρξεζηκνπνηεζεί από θάπνηα επόκελε εληνιή); Σε πνην ζηάδην πξαγκαηνπνηνύληαη ηα stores (δει. ζηέιλεηαη ζηελ κλήκε ε ηηκή πνπ έρεη γξάςεη ν επεμεξγαζηήο); Αλ ηα ζηάδηα είλαη δηαθνξεηηθά εμεγήζηε ην γηαηί. Τα loads πξαγκαηνπνηνύληαη ζην ΔΦ (όηαλ νινθιεξσζεί ην EX ε ηηκή έρεη έξζεη ζηνλ επεμεξγαζηή). Αληίζεηα ηα stores πξαγκαηνπνηνύληαη ζην CMT. H δηαθνξά νθείιεηαη ζηηο επηπηώζεηο πνπ έρνπλ νη εληνιέο απηέο θαηά ηελ ππνζεηηθή εθηέιεζε (speculative execution). Τα loads δελ επεξεάδνπλ ην architectural state θαη γηα απηό ην ιόγν επηηξέπνπκε λα πξαγκαηνπνηνύληαη ζην EX. Αληίζεηα, ηα stores 1

κεηαβάιινπλ ηελ θαηάζηαζε ηνπ ζπζηήκαηνο θαη γηα απηό ην ιόγν ηα πξαγκαηνπνηνύκε όηαλ μέξνπκε όηη ε εληνιή επηηξέπεηαη λα εθηειεζηεί κε βάζε ηε ζεηξά ηνπ πξνγξάκκαηνο (ρσξίο δειαδή λα αληηκεησπίδνπκε θηλδύλνπο ιόγσ exceptions/interrupts ή mispredicted branches). Γ. Γίλεηαη ν παξαθάησ θώδηθαο ζε C θαζώο θαη ε αληίζηνηρε assembly. int array[n]= {0, 1, -3, 4, 1}; for(int i = 0; i < N; i++) if (array[i]!= 0) array[i] = array[i] + 1; 0x00880004 addi $n, $0, N 0x00880008 addi $i, $0, 0 0x0088000C loop: ld $a, array($i) 0x00880010 beqz $a, endif 0x00880014 st $a, array($i) 0x00880018 endif: addi $i, $i, 4 0x0088001C addi $n, $n, -1 0x00880020 bnez $n, loop (i) Έζησ όηη ην ζύζηεκα πεξηέρεη έλα πίλαθα BHT κε 2-bit predictors αξρηθνπνηεκέλνπο ζην 00. Αλ ν πίλαθαο πεξηέρεη 64 εγγξαθέο θαη δεηθηνδνηείηαη από ηα low order bits ηνπ PC, ππνινγίζηε ηελ αθξίβεηα πξόβιεςεο γηα ηηο 2 εληνιέο άικαηνο ηνπ παξαπάλσ θώδηθα. Καηά ηελ δεηθηνδόηεζε αγλννύληαη πξνθαλώο ηα 2 ιηγόηεξα ζεκαληηθά ςεθία ηνπ PC. Γίλεηαη επίζεο ην FSM ηνπ 2-bit predictor. 64 εγγξαθέο 6 bits index. Βranch1: PC = 0000 0000 1000 1000 0000 0000 0001 0000 index = 000100 = 4. Βranch2: index = 001000 = 8. Τα 2 branches ρξεζηκνπνηνύλ δηαθνξεηηθνύο predictors. Έηζη έρνπκε : Branch 1 Branch 2 Πρόβλεψη Ν / Ν / Ν / Ν / Ν Ν / Ν / Τ / Τ / Τ Αποτέλεσμα Τ / Ν / Ν / Ν / Ν Τ / Τ / Τ / Τ / Ν Ακρίβεια πρόβλεψης 4/5 = 80% 2/5 = 40% (ii) Πνηνο είλαη ν ειάρηζηνο αξηζκόο εγγξαθώλ ηνπ BHT γηα ηνλ νπνίν δελ επεξεάδεηαη ε αθξίβεηα ηεο πξόβιεςεο; Πνηα ζα είλαη ε αθξίβεηα πξόβιεςεο από εθεί θαη θάησ; Όζν δελ έρνπκε aliases ε απόδνζε ησλ predictors παξακέλεη ε ίδηα. Τα 2 branches ζα ρξεζηκνπνηνύλ ηνλ ίδην predictor εθόζνλ ην index έρεη κήθνο κηθξόηεξν ή ίζν ηνπ 2. Δπνκέλσο ν ειάρηζηνο αξηζκόο ζέζεσλ γηα ηνλ νπνίν δελ επεξεάδεηαη ε απόδνζε είλαη 8 (Branch1 index = 100 θαη Branch2 index = 000). Από ην ζεκείν απηό θαη θάησ, δειαδή γηα 1, 2 ή 4 ζέζεηο ε αθξίβεηα ζα είλαη : Branch 1 Branch 2 Πρόβλεψη Ν / Τ / Τ / Τ / Τ Ν / Ν / Ν / Ν / Ν Αποτέλεσμα Τ / Ν / Ν / Ν / Ν Τ / Τ / Τ / Τ / Ν Ακρίβεια πρόβλεψης 0/5 = 0% 1/5 = 20% 2

Θέμα 2 ο (20%) Α. Πνηα ε δηαθνξά κεηαμύ snooping θαη directory πξσηνθόιισλ; Πνηνο από ηνπο 2 παξαπάλσ ηύπνπο πξσηνθόιισλ θιηκαθώλεη θαιύηεξα; Δμεγήζηε γηαηί. Σηα snooping πξσηόθνιια απαηηείηαη νη controllers όισλ ησλ caches λα παξαθνινπζνύλ ηηο ιεηηνπξγίεο όισλ. Αληίζεηα, ζηα directory πξσηόθνιια, επεηδή ν θαηάινγνο γλσξίδεη πνηνη είλαη νη sharers γηα θάζε block, θαζνξίδεη απηόο πνηεο caches ζα πξέπεη λα ελεκεξσζνύλ γηα θάπνηα ιεηηνπξγία κλήκεο. Τν γεγνλόο όηη δελ απαηηνύληαη broadcasts θάλεη ηα directory πξσηόθνιια λα θιηκαθώλνπλ θαιύηεξα από ηα snooping πξσηόθνιια. B. Πώο πιενλεθηεί κηα πινπνίεζε Test-and-Test-and-Set κηαο ιεηηνπξγίαο θιεηδώκαηνο (lock) έλαληη κηαο πινπνίεζεο Test-and-Set ζε έλα πνιπεπεμεξγαζηηθό ζύζηεκα πνπ ρξεζηκνπνηεί write-invalidate cache coherence protocol; Δμεγήζηε ηελ απάληεζή ζαο. Σηελ test-and-set πινπνίεζε, θάζε θνξά πνπ έλαο επεμεξγαζηήο πνπ δελ έρεη ην lock επηρεηξεί λα ην πάξεη, αλαγθάδεηαη λα γξάςεη ζηε ζέζε κλήκεο πνπ αληηζηνηρεί ζηε δηεύζπλζε ηνπ lock. Απηό ζπκβαίλεη ζε θάζε επαλάιεςε ηνπ test-and-set loop, κε απνηέιεζκα όηαλ νη δηεθδηθεηέο ηνπ lock είλαη πνιινί λα πξνθαινύληαη αιιεπάιιεια invalidations ηεο cache line πνπ πεξηέρεη ην lock, θαη ζπλεπώο λα εηζάγεηαη απμεκέλε θίλεζε ζην δίαπιν. Όζν κεγαιύηεξνο είλαη ν αξηζκόο ησλ δηεθδηθεηώλ ή όζν πεξηζζόηεξνο ν ρξόλνο πνπ ην lock είλαη θξαηεκέλν, ηόζν κεγαιύηεξε ε ζπκθόξεζε πνπ ππάξρεη ζην δίαπιν. Αληίζεηα, ζηελ test-and-test-and-set πινπνίεζε, ζε θάζε επαλάιεςε ηνπ loop ν δηεθδηθεηήο ηνπ lock διαβάζει ηελ ηηκή ηνπ lock, θαη κόλν όηαλ απηό θαλεί όηη απειεπζεξώζεθε, επηρεηξεί λα ην πάξεη. Οη δηεθδηθεηέο, θαηά ζπλέπεηα, θάλνπλ spinning ηνπηθά ζηηο caches ηνπο, κε απνηέιεζκα λα κελ εηζάγεηαη άζθνπα θίλεζε ζηνλ δίαπιν. Γ. Θεσξήζηε έλα πνιπεπεμεξγαζηηθό ζύζηεκα θνηλήο κλήκεο 3 επεμεξγαζηώλ θαζώο θαη ηνλ αθόινπζν θώδηθα γηα 3 δηεξγαζίεο πνπ εθηεινύληαη παξάιιεια ζην ζύζηεκα. Αξρηθά ηζρύεη όηη A=B=0. P1 P2 P3 a1: A = 1 b1: u = A b2: B = 1 c1: v = B c2: w = A (i) Βξείηε πνηνη ζπλδπαζκνί ηηκώλ γηα ηηο κεηαβιεηέο u,v,w είλαη αθνινπζηαθά ζπλεπείο (sequentially consistent) θαη πνηνη όρη. Δμεγήζηε ηηο απαληήζεηο ζαο δείρλνληαο πώο κπνξνύλ λα παξαρζνύλ ή πώο παξαβηάδνπλ ην SC. u v w 0 0 0 SC: b1, c1, c2,... 0 0 1 SC: b1, c1, a1, c2,... 0 1 0 SC: b1, b2, c1, c2, a1 0 1 1 SC: b1, a1, b2, c1, c2 1 0 0 SC: c1, c2, a1, b1, b2 1 0 1 SC: c1, a1, b1, c2, b2 1 1 0 not SC: w=0: c2 a1, όκσο u=1,v=1: a1 b1, b2 c1 ( c2), άξα δε γίλεηαη ηαπηόρξνλα 1 1 1 SC: a1, b1, b2, c1, c2 3

(ii) Θεσξήζηε όηη ην ζύζηεκα πινπνηεί ην πιένλ relaxed memory model (π.ρ. RMO). Πνηνη από ηνπο ζπλδπαζκνύο ηνπ εξσηήκαηνο α πνπ δεν επηηξέπνληαη ζην SC, κπνξνύλ λα εκθαληζηνύλ ηώξα; Δηζάγεηε ηνλ ειάρηζην αξηζκό εληνιώλ memory fence ζηνλ παξαπάλσ θώδηθα ώζηε λα απνηξέπεηαη ε εκθάληζή ηνπο. Η (u,v,w)=(1,1,0) κπνξεί λα εκθαληζηεί ζε έλα relaxed κνληέιν πνπ επηηξέπεη αλαδηάηαμε ησλ writes, σο εμήο: c2, a1, b1, b2, c1. Μπνξνύκε λα ηελ απνθύγνπκε κε ηελ ηνπνζέηεζε ελόο memory fence αλάκεζα ζηηο c1 θαη c2. Αθόκα όκσο θαη αλ δηαηεξεζεί ε ζσζηή ζεηξά ζηηο εληνιέο ηνπ P3, ζα κπνξνύζε λα εκθαληζηεί θαη σο εμήο: b2, c1, c2, a1, b1. Άξα, ζα πξέπεη λα ηνπνζεηεζεί θαη δεύηεξν memory fence αλάκεζα ζηηο b1 θαη b2. Θέμα 3ο (30%) Γίλεηαη αξρηηεθηνληθή ε νπνία πινπνηεί ηνλ αιγόξηζκν Tomasulo ρξεζηκνπνηώληαο ROB γηα in-order commit εληνιώλ. Τν pipeline ηνπ επεμεξγαζηή πεξηέρεη ηα ζηάδηα Issue (IS), Execute (EX), Write Result (WR) θαη Commit (CMT), αγλννύκε δειαδή ηα IF θαη ID. Ιζρύνπλ επίζεο ηα αθόινπζα : Τα IS, WR, CMT απαηηνύλ 1 θύθιν. Τν ζύζηεκα πεξηέρεη 2 RS γηα πξνζζέζεηο/αθαηξέζεηο θαη 1 RS γηα πνιιαπιαζηαζκνύο/δηαηξέζεηο floating point αξηζκώλ. Αληίζηνηρα, γηα integer αξηζκνύο πεξηιακβάλνληαη 4 RS γηα εληνιέο δηαθιάδσζεο, αξηζκεηηθέο θαη ινγηθέο εληνιέο. Τν ζύζηεκα πεξηιακβάλεη 1 non-pipelined functional unit γηα πξάμεηο integer αξηζκώλ. Όιεο νη εληνιέο κεηαμύ integer αξηζκώλ δηαξθνύλ 1 θύθιν. Τν ζύζηεκα πεξηιακβάλεη 2 non-pipelined floating point functional units, έλα γηα ADDD / SUBD θαη έλα γηα MULD / DIVD. Οη εληνιέο πξόζζεζεο/αθαίξεζεο δηαξθνύλ 2 θύθινπο, ελώ νη εληνιέο πνιιαπιαζηαζκνύ/δηαίξεζεο 5 θύθινπο. Γηα ηηο εληνιέο αλαθνξάο ζηε κλήκε, ζην ζηάδην EX γίλεηαη ηόζν ν ππνινγηζκόο ηεο δηεύζπλζεο αλαθνξάο όζν θαη ε πξνζπέιαζε ζηε κλήκε. Τν ζύζηεκα πεξηιακβάλεη έλα Load θαη έλα Store Queue, ην θαζέλα από ηα νπνία δηαζέηεη 2 ζέζεηο. Οη εληνιέο ρξεζηκνπνηνύλ έλα μερσξηζηό, pipelined functional unit γηα ηνλ ππνινγηζκό ηεο δηεύζπλζεο θαη δηαξθνύλ 1 θύθιν ζηελ πεξίπησζε Hit ζηελ cache θαη 5 θύθινπο ζε πεξίπησζε Miss. Η πξόβιεςε κηαο εληνιή δηαθιάδσζεο ππό ζπλζήθε γίλεηαη ταυτόχρονα κε ηε δξνκνιόγεζε ηεο εληνιήο. Ο έιεγρνο ηεο πξόβιεςεο γίλεηαη κόιηο γίλεη γλσζηό ην απνηέιεζκα ηεο εληνιήο, δειαδή ζην ζηάδην WR (θύθινο k). Σε πεξίπησζε ζθάικαηνο, ζηακαηά ε εθηέιεζε ησλ εληνιώλ ηνπ misspredicted execution path θαη ζηνλ επόκελν θύθιν (θύθινο k+1) δξνκνινγείηαη ε ζσζηή εληνιή. Ο ROB έρεη 6 ζέζεηο. Τν ζύζηεκα πεξηιακβάλεη 1 CDB. Σε πεξίπησζε πνπ παξαπάλσ από κηα εληνιέο ζέινπλ λα ην ρξεζηκνπνηήζνπλ, ηόηε πξνηεξαηόηεηα απνθηά ε παλαιότερη εληνιή (απηή πνπ έγηλε issued πξώηε). Θεσξήζηε όηη ηα branches δελ ρξεζηκνπνηνύλ ην CDB θαηά ηε δηάξθεηα ηνπ WR ζηαδίνπ ηνπο. Γηα ηηο εληνιέο δηαθιάδσζεο ππό ζπλζήθε, ην ζύζηεκα ρξεζηκνπνηεί ηνλ παξαθάησ πίλαθα από 2-bit predictors. Γίλεηαη επίζεο ην FSM δηάγξακκα ηνπ 2-bit predictor. 11 00 01 10 4

Η δεηθηνδόηεζε ηνπ πίλαθα γίλεηαη ρξεζηκνπνηώληαο ηνλ θαηάιιειν αξηζκό low order bits από ην PC ηεο εληνιήο. Ο επεμεξγαζηήο πινπνηεί ην ISA ηνπ MIPS, νη εληνιέο απέρνπλ κεηαμύ ηνπο 4 bytes θαη επνκέλσο θαηά ηε δεηθηνδόηεζε ζα πξέπεη λα αγλνήζεηε ηα 2 ιηγόηεξα ζεκαληηθά bits ηνπ PC. Τν ζύζηεκα πεξηιακβάλεη κηα fully associative cache κε 2 cache lines θαη κέγεζνο block = 16 bytes, ε νπνία ρξεζηκνπνηεί πνιηηηθή αληηθαηάζηαζεο LRU. Αξρηθά ε cache είλαη άδεηα. Οη θαηαρσξεηέο R1, R2 πεξηέρνπλ ηηο δηεπζύλζεηο ησλ πξώησλ ζηνηρείσλ δύν πηλάθσλ Α, Β αξηζκώλ δηπιήο αθξίβεηαο (κήθνπο 8 bytes ν θαζέλαο). Οη πίλαθεο είλαη επζπγξακκηζκέλνη. Γίλεηαη ν παξαθάησ θώδηθαο : 0x00880004 LOOP: LD F0, 0(R1) 0x00880008 ADDD F1, F1, F0 0x0088000C LD F2, 0(R2) 0x00880010 ADDD F1, F1, F2 0x00880014 LD F0, 8(R1) 0x00880018 MULD F1, F1, F0 0x0088001C ADDI R2, R2, #8 0x00880020 ADDI R1, R1, #16 0x00880024 SUB R6, R5, R1 0x00880028 BNEZ R6, LOOP 0x0088002C ADDD F1, F1, F6 0x00880030 ADDD F1, F1, F1 0x00880034 LD F0, -16(R2) 0x00880038 ADDD F0, F0, F1 0x0088003C ST F0, -16(R2) /* Ο ανηίζηοιχος κώδικας ζε C */ for(int i=0,j=0; i<4; i+=2, j++) temp = (temp+a[i]+b[j])*a[i+1]; temp = 2*(temp + temp2); B[0] = B[0] + temp; Γίλεηαη επίζεο όηη R 5 = R 1 + 32. Δθηειέζηε ηνλ παξαπάλσ θώδηθα θαη δώζηε ηνπο ρξόλνπο δξνκνιόγεζεο, εθηέιεζεο θαη νινθιήξσζεο ησλ εληνιώλ ζε έλαλ πίλαθα όπσο ν παξαθάησ : OP IS EX WR CMT Σχόλιο L.D F0, 0(R1) 1 2-?????? Σην πεδίν Σρόιην δηθαηνινγήζηε ηπρόλ θαζπζηεξήζεηο κεηαμύ IS-EX, EX-WR θαη WR-CMT θαζώο θαη αθπξώζεηο εληνιώλ. 5

OP IS EX WR CMT Σχόλιο LD F0,0(R1) 1 2-6 7 8 Miss A[0] Fetch A[0]A[1] in block0, LRU=1 ADDD F1, F0, F0 2 8-9 10 11 LD F2, 0(R2) 3 4 8 9 12 Miss B[0] Fetch B[0]B[1] in block1, LRU=0 ADDD F1, F1, F2 4 11-12 13 14 LD F0, 8(R1) 8 9 11 15 Structural hazard, Hit A[1], LRU=1 MULD F1, F1, F0 9 14-18 19 20 ADDI R2, R2, 8 10 11 12 21 ROB FULL ADDI R1, R1, 16 12 13 14 22 SUB R6, R5, R1 13 15 16 23 R6 = 16 BNEZ R6, LOOP 15 17 18 24 PRED NT, RES = T ADDD F6, F1, F6 16 FLUSH @ 18 LD F0, 0(R1) 19 20-24 25 26 Miss A[2] Fetch A[2]A[3] in block1, LRU=0 ADDD F1, F0, F0 21 26-27 28 29 LD F2, 0(R2) 22 23-27 29 30 Miss B[1] Fetch B[0]B[1] in block 0, LRU=1 ADDD F1, F1, F2 23 30-31 32 33 LD F0, 8(R1) 26 27 30 34 Structural Hazard, Hit A[3], LRU = 0 MULD F1, F1, F0 27 33-37 38 39 ADDI R2, R2, 8 28 29 31 40 ROB FULL ADDI R1, R1, 16 30 31 33 41 SUB R6, R5, R1 31 34 35 42 R6 = 0 BNEZ R6, LOOP 34 36 37 43 PRED = T, RES=NT LD F0, 0(R1) 35 36 40 Miss A[4] Fetch A[4]A[5] in block 0, LRU = 1, FLUSH @ 37 ADDD F6, F1, F6 38 39-40 41 44 ADDD F1, F6, F6 40 42-43 44 45 LD F0, -16(R2) 41 42-46 47 48 Miss B[0] Fetch B[0]B[1] in block1, LRU = 0 ADDD F0, F0, F1 42 48-49 50 51 ST F0, -16(R2) 43 51 52 53 Hit B[0] 6

Θέμα 4ο (20%) Υπνζέζηε έλα ζύζηεκα παξάιιειεο επεμεξγαζίαο απνηεινύκελν από 3 επεμεξγαζηέο πνπ ρξεζηκνπνηεί ην MΔSI cache coherence protocol. Κάζε επεμεξγαζηήο δηαζέηεη έλα κόλν επίπεδν θξπθήο κλήκεο δεδνκέλσλ, γηα ηελ νπνία ηζρύνπλ ηα εμήο: Αξρηθά είλαη άδεηα. Δίλαη ζπζρέηηζεο δύν δξόκσλ (2-way set associative), write-allocate, απνηεινύκελε από 32 blocks δεδνκέλσλ κεγέζνπο 32 bytes, κε LRU πνιηηηθή αληηθαηάζηαζεο. Η κηθξόηεξε κνλάδα δεδνκέλσλ πνπ κπνξεί λα δηεπζπλζηνδνηεζεί είλαη ην 1 byte. Θεσξήζηε έλα C πξόγξακκα πνπ εθηειείηαη παξάιιεια ζηνπο 3 επεμεξγαζηέο, θαη ην νπνίν πεξηιακβάλεη ηνπο εμήο νξηζκνύο κεηαβιεηώλ: struct my_s { double x,y,z; }; double a[m]; struct my_s s[n]; double b[l]; Γηα ην πξόγξακκα ηζρύνπλ ηα εμήο: Φξεζηκνπνηεί ηηκέο θηλεηήο ππνδηαζηνιήο δηπιήο αθξίβεηαο, κεγέζνπο 8 bytes ε θάζε κία Τα Μ, Ν, L είλαη ηέηνηα ώζηε ηα a[0], s[0], b[0] λα απεηθνλίδνληαη ζην 1o set ηεο cache (i) Γηα ηελ παξαθάησ ζεηξά πξνζβάζεσλ, βξείηε ηνλ αξηζκό ησλ hits θαη misses ηνπ θάζε επεμεξγαζηή. Υπνδείμηε πνηα misses είλαη compulsory, capacity, conflict ή coherence (true sharing ή false sharing). Αξρηθά νη caches είλαη άδεηεο. Όιεο νη αλαθνξέο πιελ απηώλ πνπ πεξηέρνληαη ζηα ζθηαζκέλα θειηά, είλαη αλαγλώζεηο. Κάζε cache line ρσξάεη 32/8 = 4 ηηκέο δηπιήο αθξίβεηαο. Αλαθνξηθά κε ηνλ πίλαθα s, ε δηάηαμε ησλ ζηνηρείσλ ζηελ κλήκε γίλεηαη σο εμήο: s[0].x s[0].y s[0].z s[1].x s[1].y s[1].z s[2].x s[2].y s[2].z s[3].x s[3].y s[3].z P0 P1 P2 Hit / Miss a[0] b[0] a[0] b[0] a[0] b[0] s[0].y s[1].y s[2].y s[1].x s[0].x coh. miss s[2].x hit a[1] hit a[1] 7

a[1] b[1] s[0].y s[0].x b[1] s[1].y s[1].x b[1] s[2].y s[2].x hit coh. miss coh. miss / coh. miss hit hit (ii) Πώο ζα αιιάδαηε ην παξαπάλσ πξόγξακκα ώζηε λα κεηώζεηε ηνλ αξηζκό ησλ misses; Γηθαηνινγήζηε ηελ απάληεζή ζαο. Θα θάλακε padding ζηελ δνκή my_s ώζηε λα εμαζθαιίζνπκε όηη θάζε ηξηάδα x,y,z απεηθνλίδεηαη ζε δηαθνξεηηθή cache line. Απηό ζα νδεγνύζε ζηελ εμάιεηςε ησλ coherence misses. struct my_s { double x,y,z; double dummy; }; 8