ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ"

Transcript

1 ΗΜΥ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ [Προσαρμογή από Computer Architecture: A Quantitave Approach και Computer Organization and Design, Patterson & Hennessy, 2005 και Superscalar Microprocessor Design, Johnson, 1992 ]

2 Παραλληλισμός ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.2

3 Απόδοση του RISC Performance Metrics Μονάδες Μέτρησης Απόδοσης l Response Time (Χρόνος Ανταπόκρισης και εκτέλεσης) (Execution time, Latency) The time elapse between the start and the completion of an event Χρόνος που περνά μεταξύ της έναρξης και του τέλους ενός γεγονότος. l Throughput (Παραγωγή) (Bandwidth) The amount of work done in a given time Η ποσότητα εργασίας σε μια δεδομένη μονάδα χρόνου. l Performance (Απόδοση) Number of events occurring per unit of time Αριθμός γεγονότων που διεξάγονται ανά μονάδα χρόνου. l Σημ. Ο Χρόνος Εκτέλεσης είναι στην ουσία ο παρονομαστής στην απόδοση χαμηλότερος χρόνος εκτέλεσης εξυπακούει ψηλότερη απόδοση. l Σημ. Ο Χρόνος εκτέλεσης, ο χρόνος ανταπόκρισης καθώς και η απόδοση είναι στενά συνδεδεμένα μεταξύ τους! ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.3

4 Απόδοση του RISC Performance Metrics Μονάδες Μέτρησης Απόδοσης l CPU time Ο χρόνος κατά τον οποίο το CPU κάνει υπολογισμούς. Αποτελείται από: - User CPU time (χρόνος χρήστη) Ο χρόνος CPU που ξοδεύεται στο πρόγραμμα, - System CPU time (χρόνος συστήματος) Ο χρόνος του CPU που ξοδεύεται στο λειτουργικό σύστημα εκτελώντας απαιτήσεις των προγραμμάτων. l Οι σημερινοί επεξεργαστές ελέγχονται από ένα ρολόι με σταθερή περίοδο (constant cycle time ( )). Η συχνότητα ενός επεξεργαστή δίνεται από την περίοδο (frequency - clock rate (f) = 1/ ). l Το μέγεθος ενός προγράμματος δίνεται από τον αριθμό εντολών instruction count (I c ) ο αριθμός των εντολών μηχανής που θα εκτελεστούν (machine instructions to be executed.) ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.4

5 Απόδοση του RISC Performance Measures Μέτρηση Απόδοσης l Ας προσδιορίσουμε τότε το μέσο αριθμό κύκλων ανά εντολή (average number of clock cycle per instruction (CPI)) σαν: ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.5

6 Απόδοση του RISC Performance Metrics Μέτρηση Απόδοσης l Για ένα δεδομένο σετ εντολών, υπολογίζουμε το CPI σε σχέση με όλων των ειδών εντολών, αν γνωρίζουμε την συχνότητα εμφάνισης των εντολών στο πρόγραμμα. l Το CPI εξαρτάται από την οργάνωση/αρχιτεκτονική καθώς και το σετ εντολών της συγκεκριμένης μηχανής. l Το Clock rate εξαρτάται από την τεχνολογία καθώς και την οργάνωση/αρχιτεκτονική της μηχανής. l Το Instruction count εξαρτάται από το σετ εντολών της μηχανής, καθώς και την τεχνολογία και λειτουργία του μεταγλωττιστή (compiler technology). ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.6

7 Απόδοση του RISC Performance Metrics - Μέτρηση Απόδοσης CPU = T ime CPU Clock cycles * Clock Cycle time CPU = T ime CPU Clock cycles Clock Rate The CPU time is estimated as ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.7

8 Απόδοση του RISC Ερώτηση: Με βάση τον ορισμό (που είδαμε) του CPU time, πώς μπορεί να βελτιωθεί η απόδοση; Είναι δυνατόν να μπορέσουμε να βελτιώσουμε την απόδοση του RISC; l Πώς μπορούμε να βελτιώσουμε την απόδοση; -Μείωση του instruction count, -Μείωση του CPI, -Αύξηση του clock rate. l Πώς αυξάνουμε το clock rate? - Τεχνολογικές Βελτιώσεις - Αρχιτεκτονικές Βελτιώσεις l Πώς μειώνουμε το CPI? - Αύξηση του αριθμού εντολών μέσα σε ένα κύκλο! ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.8

9 Πέρα από την απόδοση του RISC Πέρα από το RISC l Ο ορισμός scalar processor χρησιμοποιείται για να περιγράψει ένα επεξεργαστή που φέρνει και εκτελεί μια εντολή κάθε φορά. l Με βάση την RISC φιλοσοφία, ένας βελτιωμένος scalar processor, στην καλύτερη περίπτωση μπορεί να εκτελέσει μια εντολή ανά κύκλο (one instruction per clock cycle). l Η απόδοση του scalar processor με βάση την προηγούμενη συζήτηση μας, μπορεί να βελτιωθεί μέσω instruction pipelining και μετατροπή του ALU σε πολύ-εργαλείο (δηλαδή να μπορέσει το ALU να διεξάγει πολλαπλές λειτουργίες (multifunctional capability of ALU). ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.9

10 Ας θυμηθούμε: MIPS Pipeline ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.10

11 Ας θυμηθούμε: Παραδοσιακό MIPS Pipeline ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.11

12 Ας θυμηθούμε: Pipeline Hazards Structural hazards l Σχεδίαση της διασωλήνωσης ώστε να αφαιρεθούν τα structural hazards Data hazards Εγγραφή πριν την ανάγνωση (read before write) l Προχωρούμε τα δεδομένα μέσα στην διασωλήνωση (data forwarding) l Για τις περιπτώσεις που το forwarding δεν δουλεύει (π.χ., loaduse) χρησιμοποιούμε υλικό που να μπορεί να σταματήσει τη διασωλήνωση (stall) Control (Branch) hazards beq, bne,j,jr,jal l l l l Stall Μειώνει την απόδοση αισθητά Σχεδίαση του μηχανισμού παύσης της διασωλήνωσης στην αρχή ώστε να μειωθεί το κόστος καθώς και το hardware που χρειάζεται για stall. Καθυστέρηση της απόφασης (requires compiler support) δεν κάνει όμως για βαθιές διασωληνώσεις που απαιτούν καθυστέρηση μεγαλύτερη του ενός slot Πρόβλεψη περισσότερο hardware, μπορεί να μειώσει την επίδραση των control hazard stalls ακόμα περισσότερο αν το branch prediction (BHT) και αν η branchedto εντολή είναι cached (BTB) ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.12

13 Βελτιώνοντας περισσότερο την απόδοση Δυο επιλογές για αύξηση του Instruction-Level Parallelism (ILP): l Αύξηση του βάθους της διασωλήνωσης για αύξηση της ωρολογιακής συχνότητας superpipelining l Μεταφορά (fetch) και εκτέλεση (execute) πολλαπλών εντολών κάθε φορά (expand every pipeline stage to accommodate multiple instructions) multiple-issue πολλαπλή έκδοση Εκτέλεση πολλών εντολών ανά στάδιο διασωλήνωσης δίνει CPI λιγότερο του 1 l Εδώ χρησιμοποιείται το IPC: Instructions Per Clock cycle - Π.χ., ένας 4-πλός μικροεπεξεργαστής πολλαπλής έκδοσης (fourway multiple-issue processor) με συχνότητα 6 GHz, μπορεί να εκτελέσει στην καλύτερη περίπτωση 24 δις εντολών/δευτερόλεπτο με ελάχιστο CPI = 0.25 ή μέγιστο IPC = 4 - Αν το datapath έχει πέντε στάδια διασωλήνωσης (five stage pipeline), πόσες εντολές είναι ενεργές μέσα στην διασωλήνωση ανά κάθε στιγμή; ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.13

14 Παραλληλισμός Εντολών Instruction Level Parallelism ILP Μπορεί να επιτευχθεί με δυο φιλοσοφίες: Dynamic approach - Δυναμική Μέθοδος το υλικό κυρίως εντοπίζει και καθορίζει τον παραλληλισμό Static approach - Στατική Μέθοδος εναπόκειται στο λογισμικό/μεταγλωττιστή να εντοπίσει και να χρησιμοποιήσει παραλληλισμό Περιορισμοί: True data dependency Procedural dependency Resource conflicts Output dependency Antidependency ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.14

15 Effect of Dependencies Επίδραση Εξαρτήσεων Assume 2-way multiple-issue processor Assume a simple 4-stage pipeline ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.15

16 Η μετά-risc εποχή: Ορολογία l Τα μηχανήματα με ψηλότερες συχνότητες και βαθύτερα pipelines ονομάζονται super pipelined. l Τα μηχανήματα που μπορούν δυναμικά να εκδόσουν περισσότερες από μια εντολές ανά κύκλο ονομάζονται super scalar. l Οι μηχανές που εκτελούν πολλές πράξεις (συνήθως 5-7 εντολές) ως μια μεγάλη εντολή ονομάζονται Very-long-Instruction-Word (VLIW) (στατική μέθοδος). ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.16

17 Superscalar (SS) και Superpipelined Επεξεργαστές Τι είναι το Superscalar? Common instructions (arithmetic, load/store, conditional branch) can be initiated and executed independently Equally applicable to RISC & CISC In practice usually RISC Γιατί Superscalar? Most operations are on scalar quantities (see RISC notes) Improve these operations to get an overall improvement Τι είναι το Superpipelined? Many pipeline stages need less than half a clock cycle Double internal clock speed gets two tasks per external clock cycle Superscalar allows parallel fetch-execute ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.17

18 Superscalar Execution Πως δουλεύει το SS ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.18

19 Γενική Οργάνωση Επεξεργαστή Superscalar ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.19

20 Superpipelined Επεξεργαστές Αύξηση του βάθους της διασωλήνωσης με σκοπό την αύξηση της συχνότητας (more instructions in flight at one time) l Όσο πιο ψηλός ο δείχτης (degree) του superpipelining, τόσο πιο πολύ forwarding/hazard hardware χρειάζεται, τόσο πιο πολύ latch overhead (i.e., the pipeline latch accounts for a larger and larger percentage of the clock cycle time), και τόσο πιο πολύ το clock skew (i.e., because of faster and faster clocks) Superpipelined vs Superscalar Superpipelined: πιο μεγάλη καθυστέρηση εντολών (instruction latency) από τους SS των οποίων η απόδοση εξαρτάται περισσότερο από τα true dependencies (δεδομένων και ελέγχου). Superscalar: είναι πιο ευάλωτοι σε συγκρούσεις δεδομένων στα εκτελεστικά συστήματα (resource conflicts) αλλά αυτό διορθώνεται με hardware (και σωστό σχεδιασμό!) ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.20

21 Superscalar v Superpipeline Base 4-stage pipeline machine, clock cycle τ Superpipelined 8- stage machine, clock cycle τ =τ/2 τ 2-way superscalar machine, clock cycle τ τ = τ/2 ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.21

22 Instruction vs Machine Parallelism Instruction-level parallelism (ILP) ενός προγράμματος l Ο μέσος αριθμός εντολών σε ένα πρόγραμμα που ο επεξεργαστής ίσως να μπορεί να εκτελέσει παράλληλα l Συνήθως αποτέλεσμα των true (data) dependencies και των procedural (control) dependencies, σε σχέση με τον αριθμό των υπόλοιπων εντολών Data-level parallelism (DLP) DO I = 1 TO 100 A[I] = A[I] + 1 CONTINUE Machine parallelism ενός επεξεργαστή η ικανότητα ενός επεξεργαστή να εκμεταλλεύεται το ILP ενός προγράμματος l Determined by the number of instructions that can be fetched and executed at the same time Για ψηλότερη απόδοση, χρειαζόμαστε ILP και machine parallelism ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.22

23 Κατηγορίες επεξεργαστών πολλαπλής-έκδοσης Static multiple-issue processors (VLIW) l Η απόφαση/εις για το ποιες εντολές θα εκτελεστούν παράλληλα γίνεται στατικά από τον μεταγλωττιστή l Π.χ., Intel Itanium και Itanium 2 για IA-64 ISA EPIC (Explicit Parallel Instruction Computer) Dynamic multiple-issue processors (Superscalar) l Η απόφαση/εις για το ποιες εντολές θα εκτελεστούν παράλληλα γίνεται δυναμικά από το υλικό l Π.χ., IBM Power 2, Pentium 4, MIPS R10K, HP PA 8500 ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.23

24 Multiple-issue Processors: Instruction Issue and Completion Policies Instruction-issue αρχή της εκτέλεσης εντολής l Instruction lookahead ικανότητα να φέρνει, να αποκωδικοποιεί και να εκδίδει εντολές πέραν της εντολής που εκτελείται (fetch, decode and issue instructions beyond the current instruction) Instruction-completion συμπλήρωση εκτέλεσης l Processor lookahead ικανότητα να εκτελεί εντολές που εκδόθηκαν πέραν της εντολής που εκτελείται (complete issued instructions beyond the current instruction) Instruction-commit γράψιμο των αποτελεσμάτων στο Register File ή το D$ cache (i.e., change the machine state) l In-order issue with in-order completion l In-order issue with out-of-order completion l Out-of-order issue with out-of-order completion l Out-of-order issue with out-of-order completion and in-order commit ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.25

25 Control Hazards When the flow of instruction addresses is not what the pipeline expects; incurred by change of flow instructions l Conditional branches (beq, bne) l Unconditional branches (j) Possible solutions l Stall l Move decision point earlier in the pipeline l Predict l Delay decision (requires compiler support) Control hazards occur less frequently than data hazards; there is nothing as effective against control hazards as forwarding is for data hazards ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.26

26 Branch Prediction Resolve branch hazards by assuming a given outcome and proceeding without waiting to see the actual branch outcome 1. Predict not taken always predict branches will not be taken, continue to fetch from the sequential instruction stream, only when branch is taken does the pipeline stall l l l If taken, flush instructions in the pipeline after the branch - in,, and EX if branch logic in MEM three stalls - in if branch logic in one stall ensure that those flushed instructions haven t changed machine state automatic in the MIPS pipeline since machine state changing operations are at the tail end of the pipeline (MemWrite or RegWrite) restart the pipeline at the branch destination ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.27

27 Branch Prediction, con t Resolve branch hazards by statically assuming a given outcome and proceeding 2. Predict taken always predict branches will be taken l Predict taken always incurs a stall (if branch destination hardware has been moved to the stage) As the branch penalty increases (for deeper pipelines), a simple static prediction scheme will hurt performance With more hardware, possible to try to predict branch behavior dynamically during program execution 3. Dynamic branch prediction predict branches at runtime using run-time information ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.28

28 3 Generic Data Hazards: RAW, WAR, WAW Read After Write (RAW) Instr J tries to read operand before Instr I writes it I: add r1,r2,r3 J: sub r4,r1,r3 Caused by a Dependence (in compiler nomenclature). This hazard results from an actual need for communication. Forwarding handles many, but not all, RAW dependencies in 5 stage MIPS pipeline ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.29

29 3 Generic Data Hazards: RAW, WAR, WAW Write After Read (WAR) Instr J writes operand before Instr I reads it Called an anti-dependence by compiler writers. This results from reuse of the name r1. Can t happen in MIPS 5 stage pipeline because: l l I: sub r4,r1,r3 J: add r1,r2,r3 K: mul r6,r1,r7 All instructions take 5 stages, and Reads are always in stage 2, and l Register Writes must be in stage 5 ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.30

30 3 Generic Data Hazards: RAW, WAR, WAW Write After Write (WAW) Instr J writes operand before Instr I writes it. I: sub r1,r4,r3 J: add r1,r2,r3 K: mul r6,r1,r7 Called an output dependence by compiler writers This also results from the reuse of name r1. Can t happen in MIPS 5 stage pipeline because: l All instructions take 5 stages, and l Register Writes must be in stage 5 Can see WAR and WAW in more complicated pipes ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.31

31 Multiple-issue Processors: Instruction Issue and Completion Policies Instruction-issue αρχή της εκτέλεσης εντολής l Instruction lookahead ικανότητα να φέρνει, να αποκωδικοποιεί και να εκδίδει εντολές πέραν της εντολής που εκτελείται (fetch, decode and issue instructions beyond the current instruction) Instruction-completion συμπλήρωση εκτέλεσης l Processor lookahead ικανότητα να εκτελεί εντολές που εκδόθηκαν πέραν της εντολής που εκτελείται (complete issued instructions beyond the current instruction) Instruction-commit γράψιμο των αποτελεσμάτων στο Register File ή το D$ cache (i.e., change the machine state) l In-order issue with in-order completion l In-order issue with out-of-order completion l Out-of-order issue with out-of-order completion l Out-of-order issue with out-of-order completion and in-order commit ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.32

32 In-Order Issue with In-Order Completion Το πιο απλό πράγμα είναι φυσικά η έκδοση, εκτέλεση και συμπλήρωση εντολών με την φυσική τους σειρά (i.e., in program order) Παράδειγμα: l Assume a pipelined processor that can fetch and decode two instructions per cycle, that has three functional units (a single cycle adder, a single cycle shifter, and a two cycle multiplier), and that can complete (and write back) two results per cycle l And an instruction sequence with the following characteristics I1 needs two execute cycles (a multiply) I2 I3 I4 needs the same function unit as I3 I5 needs data value produced by I4 I6 needs the same function unit as I5 ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.33

33 In-Order Issue, In-Order Completion Example I n s t r. O r d e r I1 I2 I3 I4 I5 I6 EX EX EX In parallel can Fetch/decode 2 Commit 2 WB WB EX WB EX I1 two execute cycles I2 I3 I4 same function unit as I3 I5 data value produced by I4 I6 same function unit as I5 WB EX WB EX need forwarding hardware WB 8 cycles in total ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.35

34 In-Order Issue with Out-of-Order Completion Με συμπλήρωση out-of-order, μια εντολή που εκδόθηκε μετά από μια άλλη, μπορεί να συμπληρωθεί πριν την προπορευμένη σε φυσική σειρά εντολή l Out-of-order completion χρησιμοποιήται και σε single-issue pipelined processors για βελτίωση της απόδοσης πράξεων με μεγάλη καθυσττέρησης (latency), όπως τη διαίρεση Όταν χρησιμοποιούμε out-of-order completion, η έκδοση εντολών γίνεται stalled όταν: l l υπάρχει σύγκρουση πόρων (resource conflict) όταν μια εντολή που είναι έτοιμη για έκδοση χρειάζεται δεδομένα που θα παράγει μια εντολή που ακόμη δεν έχει συμπληρωθεί (true data dependency RAW) ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.36

35 IOI-OOC Example I n s t r. O r d e r I1 I2 I3 I4 I5 EX EX EX EX WB WB WB EX WB EX I1 two execute cycles I2 I3 I4 same function unit as I3 I5 data value produced by I4 I6 same function unit as I5 WB 7 cycles in total I6 EX WB ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.38

36 Χειρισμός των Output Dependencies Υπάρχει ακόμη μια περίπτωση που η έκδοση μιας εντολής σταματάει (stalls) με IOI-OOC. Ας υποθέσουμε: I1 writes to R3 I2 writes to R3 I5 reads R3 l Εάν η εντολή I1 γράψει μετά την εντολή I2 στον καταχωρητή R3, τότε η εντολή I5 θα διαβάσει λάθος τιμή για τον R3 l Η I2 έχει ένα output dependency με την I1 write after write (WAW) Η έκδοση της I2 πρέπει να καθυστερήσει (stalled) αν το αποτέλεσμά της δύναται να επαναγραφεί από μια προηγούμενη, στη σειρά έκδοσης, (πχ. η I1) εντολή που χρειάζεται περισσόερο χρόνο για να ολοκληρωθεί το stall γίνεται πριν την έκδοση της εντολής (instruction issue) Ενώ το IOI-OOC εξυπακούει καλύτερη απόδοση, χρειάζεται περισσότερο έλεγχο για εξαρτήσεις και ως αποτέλεσμα, κατάλληλο υλικό για έλεγχο εξαρτήσεων. l Έλεγχος εξαρήσων για read after write (RAW) και write after write (WAW) ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.39

37 Out-of-Order Issue with Out-of-Order Completion Στο in-order issue, ο επεξεργαστής σταματά την αποκωδικοποίηση εντολών όταν μια εντολή έτοιμη για εκτέλεση έχει είτε resource conflict είτε data dependency με μια εντολή που ήδη εκδόθηκε, αλλά που δεν συμπληρώθηκε. l Ο επεξεργαστής δεν είναι ικανός να δει πέραν της εντολής τη σύγκρουση/εξάρτησης παρά το γεγονός ότι δύναται να υπάρχουν πιο κάτω εντολές που δεν έχουν σύγκρουση/εξάρτηση και, επομένως, να μπορούν να εκδοθούν. Στο out-of-order issue, εντολές μεταγενέστερες της εντολής με τη σύγκρουση/εξάρτηση μπορούν να εκδοθούν και να αποκωδικοποίηθούν (fetch and decode) l l l Αποθηκεύονται σε ένα instruction buffer (όσο έχει χώρο φυσικά) και σημείωνονται/καταχώρούνται στις εντολές στο buffer που δεν έχουν συγκρούσεις/εξαρτήσεις Οι σημειωμένες εντολές εκδίδονται από το buffer χωρίς αναφορά στην φυσική τους σειρά στο πρόγραμμα. Χρήση instruction window ( = μέγεθος instruction buffer). ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.40

38 OOI-OOC Example I n s t r. O r d e r I1 I2 I3 I4 I5 EX EX EX EX WB WB WB EX WB I1 two execute cycles I2 I3 I4 same function unit as I3 I5 data value produced by I4 I6 same function unit as I5 EX WB I6 EX WB 6 cycles in total ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.41

39 Anti-dependencies Me OOI επίσης έχουμε να αντιμετωπίσουμε data antidependencies όταν μια εντολή που εκτελείται σε μεταγενέστερο στάδιο αλλά συμπληρώνεται πιο γρήγορα (that completes earlier) παράγει ένα data value που καταστρέφει ένα data value το οποίο χρησιμοποιείται από μια εντολή που κανονικά εκτελείται πριν, αλλά εκδίδεται μετά: R3 := R3 * R5 R4 := R3 + 1 R3 := R5 + 1 True data dependency Output dependency Antidependency Ο περιορισμός είναι παρόμοιος με τα true data dependencies, αλλά αντίστροφος ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.42

40 Dependencies Επανάληψη Τρία data dependencies: l True data dependencies (read before write) l Antidependencies (write before read) l Output dependencies (write before write) storage conflicts εμφανίζονται με την χρήση των registers (ή άλλα storage locations) True dependencies αντιπροσωπεύουν την ροή δεδομένων και την ροή του προγράμματος Anti- και output dependencies δημιουργούνται εξαιτίας του περιορισμένου αριθμού καταχωρητών και εξυπακούει ότι το πρόγραμμα χρησημοποιά τα ίδια φυσικά registers για διαφορετικούς υπολογισμούς Όταν οι εντολές εκδίδονται out-of-order, η σειρά συναλλαγών μεταξύ καταχωρητών και δεδομένων σπάζει, και τα δεδομένα συγκρούονται για τα registers (conflict for registers) ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.43

41 Storage Conflicts και Register Renaming Τα Storage conflicts μειώνονται (ή αποφεύγονται) με αύξηση ή με αντιγραφή της προβληματικής τοποθεσίας l Επιπρόσθετοι καταχωρητές χρησιμοποιούνται για να λύσουν το πρόβημα - Με δυναμικό τρόπο από το υλικό σε επεξεργαστές SS Register renaming Ο επεξεργαστής μετονομάζει το αρχικό register identifier στην εντολή σε ένα καινούριο και αχρησιμοποίητο register (κάποιο που δεν χρησιμποποιήται σε κάποια από τις εντολές που μπορεί να δει) R3 := R3 * R5 R4 := R3 + 1 R3 := R5 + 1 R3b := R3a * R5a R4a := R3b + 1 R3c := R5a + 1 l The hardware that does renaming assigns a replacement register from a pool of free registers and releases it back to the pool when its value is superseded and there are no outstanding references to it ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.44

42 Review: Extracting More Performance To achieve high performance, need both machine parallelism and instruction level parallelism (ILP) by l Superpipelining l Static multiple-issue (VLIW) l Dynamic multiple-issue (superscalar) A processor s instruction issue and completion policies impact available ILP l In-order issue with in-order completion l In-order issue with out-of-order completion - Creates output dependencies (write before write) l Out-of-order issue with out-of-order completion - Creates antidependency (write before read) l Out-of-order issue with out-of-order completion and in-order commit Register renaming can solve these storage dependencies ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.45

43 Speedup Measurements H βελτίωση της απόδοσης του SS επεξεργαστή είναι - Assumes scalar and superscalar machines have the same IC & CR # scalar cycles speedup = s n = # superscalar cycles Για μέτρηση του μέσου όρου βελτίωσης της απόδοσης, n χρησιμοποιούμε AM = 1/n s l Arithmetic mean i i = 1 n l Harmonic mean HM = n / ( 1/s i ) i = 1 - assigns a larger weighting to the programs with the smallest speedup l EX: two programs with same scalar cycles, with a SS speedup of 2 for program1 and 25 for program2 - AM = - HM = ½ * (2 + 25) = / ( ) = 2 /.54 = 3.7 ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.46

44 Maximum (θεωρητική) SS Βελτίωση απόδοσης Η ψηλότερη βελτίωση απόδοσης από το ιδεώδες σύστημα παραλληλισμού ( ideal machine parallelism) (ignoring resource conflicts, storage dependencies, and procedural dependencies) l HM of 5.4 is the highest average speedup for these benchmarks that can be achieved even with ideal machine parallelism! From Johnson, 1992 Speedup diff ccom doduc gnuchess irsim linpack simple troff twolf ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.47

45 Baseline Superscalar MIPS Processor Model P C Fetch BHT BTB I$ N I RUU_Head RUU_Tail Decode & Dispatch N L I I Register Update Unit (managed as a queue) L FP I Integer RegFile RegFile RUU Issue & Execute Load/Store Queue 1 2 FPALU IALU IALU LSQ IMULT Result Bus Writeback D$ Commit ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.48

46 The Post-RISC Architecture ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.49

47 Post-RISC characteristics Out-of-order execution l (Existed 20 years ago on IBM and CDC) l Innovative for single-chip l Branch history bits Precise interrupts Fetch/Flow Prediction More caching l Instruction cache becomes CPU scratch space Register renaming l First in IBM 360/91 FPU ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.50 Traditional RISC l DEC Alpha l Sun UltraSPARC-1 (partially) Post-RISC l PowerPC 604 l MIPS R10000 l HP PA-8000 l Intel Pentium Pro l DEC Alpha l HAL SPARC64

48 ΕΠΟΜΕΝΗ ΔΙΑΛΕΞΗ ΚΑΙ ΚΑΤ ΟΙΚΟΝ ΜΕΛΕΤΗ ΕΠΟΜΕΝΗ ΕΝΟΤΗΤΑ Δυναμικός Παραλληλισμός Επιπέδου Εντολών -- Superscalar Επεξεργαστές ΚΑΤ ΟΙΚΟΝ ΜΕΛΕΤΗ l Κεφάλαιο 6 Patterson&Hennessy (από το βιβλίο του ΗΜΥ212) l Κεφάλαιο 2 του βιβλίου σας ΗΜΥ312 Δ16 - Παραλληλισμός εντολών και εισαγωγή στον SimpleScalar.51

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Αναπληρώτρια Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή από Computer

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ Διδάσκων: Χάρης Θεοχαρίδης Αναπληρωτής Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) [Προσαρμογή από Computer

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I MIPS Η MIPS (Microprocessor without Interlocked Pipeline Stages) είναι μία αρχιτεκτονική συνόλου εντολών (ISA) γλώσσας μηχανής που αναπτύχθηκε από την εταιρεία

Διαβάστε περισσότερα

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών 1 Περιορισμοί των βαθμωτών αρχιτεκτονικών Μέγιστο throughput: 1 εντολή/κύκλο ρολογιού (IPC 1) Υποχρεωτική ροή όλων των (διαφορετικών) τύπων εντολών μέσα από

Διαβάστε περισσότερα

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

Παραλληλισμός σε επίπεδο εντολών Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Περιορισμοί των βαθμωτών αρχιτεκτονικών

Περιορισμοί των βαθμωτών αρχιτεκτονικών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς. Περιορισμοί

Διαβάστε περισσότερα

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

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) 1 ιασωλήνωση 2 Pipelining Παραλληλισμός + Pipelining 3 Χρόνος Εκτέλεσης = I x CPI x Cycle Time Με ή χωρις pipeline το Ι είναι το ίδιο όπως και τo CPI = 1. Το

Διαβάστε περισσότερα

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών 1 Περιορισμοί των βαθμωτών αρχιτεκτονικών Μέγιστο throughput: 1 εντολή/κύκλο ρολογιού (IPC 1) Υποχρεωτική ροή όλων των (διαφορετικών) τύπων εντολών μέσα από

Διαβάστε περισσότερα

Υπερβαθµωτή Οργάνωση Υπολογιστών

Υπερβαθµωτή Οργάνωση Υπολογιστών Υπερβαθµωτή Οργάνωση Υπολογιστών Από τις βαθµωτές στις υπερβαθµωτές αρχιτεκτονικές αγωγού Τα όρια του Παραλληλισµού σε επίπεδο εντολών (Instruction Level Parallelism - ILP) Weiss and Smith [1984] Sohi

Διαβάστε περισσότερα

Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline)

Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline) Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση: Καθ. Εφαρμογών Νικόλαος Πετράκης, Τμήματος Ηλεκτρονικών Μηχανικών

Διαβάστε περισσότερα

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

Δυναμική Δρομολόγηση Εντολών (Dynamic Scheduling) Δυναμική Δρομολόγηση Εντολών (Dynamic Scheduling) Απόδοση pipeline Pipeline CPI = Ideal pipeline CPI + Structural Stalls + Data Hazard Stalls + Control Stalls Ideal pipeline CPI: μέτρο της μέγιστης απόδοσης

Διαβάστε περισσότερα

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. Δίπλωμα 4. αποθήκευση Σειριακή προσέγγιση για 4 φορτία = 8h 30 min κάθε «φάση» Pipelined προσέγγιση για 4 φορτία = 3.5h Το

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Προχωρημένες Τεχνικές Pipelining. Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Προχωρημένες Τεχνικές Pipelining. Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Προχωρημένες Τεχνικές Pipelining. Ιάκωβος Μαυροειδής WB Data Imm Επεξεργαστής DLX Instruction Fetch Instr. Decode Reg. Fetch Execute Addr. Calc Memory Access Write Back

Διαβάστε περισσότερα

Τέτοιες λειτουργίες γίνονται διαμέσου του

Τέτοιες λειτουργίες γίνονται διαμέσου του Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου

Διαβάστε περισσότερα

Συστήματα σε Ολοκληρωμένα Κυκλώματα

Συστήματα σε Ολοκληρωμένα Κυκλώματα Συστήματα σε Ολοκληρωμένα Κυκλώματα Κεφάλαιο 4: Αρχιτεκτονική των Embedded Μικροεπεξεργαστών Διδάσκων: Καθηγητής Οδυσσέας Κουφοπαύλου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών ΕΙΣΑΓΩΓΗ Παρουσιάζεται

Διαβάστε περισσότερα

CS425 Computer Systems Architecture

CS425 Computer Systems Architecture CS425 Computer Systems Architecture Fall 2017 Dynamic Instruction Scheduling: Scoreboard CS425 - Vassilis Papaefstathiou 1 DLX Processor Instruction Fetch Instr. Decode Reg. Fetch Execute Addr. Calc Memory

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπερβαθμωτοι επεξεργαστές

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπερβαθμωτοι επεξεργαστές Υ- 01 Αρχιτεκτονική Υπολογιστών Υπερβαθμωτοι επεξεργαστές Αρης Ευθυμίου Το σημερινό μάθημα Υπερβαθμωτοί επεξεργαστές (superscalar) Εκτέλεση σε σειρά Εκτέλεση εκτός σειράς Alpha 21164 Scoreboard Μετονομασία

Διαβάστε περισσότερα

(Branch Prediction Mechanisms)

(Branch Prediction Mechanisms) Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms) 1 Εντολές Διακλάδωσης Περίπου 20% των εντολών είναι εντολές διακλάδωσης Πολλά στάδια μεταξύ υπολογισμού του επόμενου PC και εκτέλεσης του branch

Διαβάστε περισσότερα

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4.

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4. Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή Time 6 PM 7 8 9 10 11 12 1 2 AM 1. Πλυντήριο 2. Στεγνωτήριο 3. ίπλωµα 4. αποθήκευση Task order A B C D Σειριακή προσέγγιση για 4 φορτία =8h 30 min κάθε «φάση»

Διαβάστε περισσότερα

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

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 13 Διακλαδώσεις Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Η μέχρι τώρα μικρο-αρχιτεκτονική (Eντολές Διακλάδωσης) Η μικρο-αρχιτεκτονική

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining)

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining) ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining) 1 ιασωλήνωση 2 Διασωλήνωση και Παραλληλισμός (Parallelism) Διασωλήνωση (Pipelining):

Διαβάστε περισσότερα

Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. ίπλωµα 4. αποθήκευση Time Task order A B C D 6 PM 7 8 9 10 11 12 1 2 AM Σειριακή προσέγγιση για 4 φορτία =8h 30 min κάθε «φάση»

Διαβάστε περισσότερα

Instruction-Level Parallelism and its Dynamic Exploitation. Μάθηµα 3ο Computer Architecture-A Quantitative Approach

Instruction-Level Parallelism and its Dynamic Exploitation. Μάθηµα 3ο Computer Architecture-A Quantitative Approach Instruction-Level Parallelism and its Dynamic Exploitation Μάθηµα 3ο Computer Architecture-A Quantitative Approach Instruction-Level Parallelism (ILP) Επικάλυψη εντολών στοχεύοντας στην παράλληλη εκτέλεσή

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Static Scheduling Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής Τεχνικές ελάττωσης stalls. CPI = Ideal CPI + Structural stalls + RAW stalls + WAR stalls + WAW stalls + Control

Διαβάστε περισσότερα

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

Οι τέσσερις αρχές για τον σχεδιασμό του συνόλου εντολών μιας μηχανής είναι: More material! Οι τέσσερις αρχές για τον σχεδιασμό του συνόλου εντολών μιας μηχανής είναι: 1. Η απλότητα στη σχεδίαση οφείλεται στη κανονικοποίηση. Πολλά χαρακτηριστικά των εντολών της μηχανης MIPS οφείλονται

Διαβάστε περισσότερα

Εντολές Διακλάδωσης. #bubbles ~= pipeline depth X loop length. Next fetch started. Fetch. I-cache. Fetch Buffer. Decode. Issue Buffer.

Εντολές Διακλάδωσης. #bubbles ~= pipeline depth X loop length. Next fetch started. Fetch. I-cache. Fetch Buffer. Decode. Issue Buffer. Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς. Εντολές

Διαβάστε περισσότερα

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 6ο μάθημα: χρονοπρογραμματισμός, αλγόριθμος Tomasulo, εικασία Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου InstrucDon- Level

Διαβάστε περισσότερα

CS-425 Mid-term exam

CS-425 Mid-term exam CS-425 Mid-term exam Tuesday November 8th, 2005, 5-8 p.m. Aids: Non-programmable pocket calculator Only ONE problem solution PER PAGE! Put your NAME on each sheet. NUMBER each sheet. Mobile phones are

Διαβάστε περισσότερα

Pipelined Datapath, Hazards and Forwarding

Pipelined Datapath, Hazards and Forwarding Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Pipelined Datapath, Hazards and Forwarding Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διασωλήνωση Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

Application Operating System. Datapath & Control/Memory. Digital Design Circuit Design. Layout

Application Operating System. Datapath & Control/Memory. Digital Design Circuit Design. Layout Application Operating System Λογισμικό Oργάνωση Μικρο- Αρχιτεκτονική Compiler Firmware Instr. Set Proc. I/O system Datapath & Control/Memory Digital Design Circuit Design Layout Instruction Set Architecture

Διαβάστε περισσότερα

Instruction Execution Times

Instruction Execution Times 1 C Execution Times InThisAppendix... Introduction DL330 Execution Times DL330P Execution Times DL340 Execution Times C-2 Execution Times Introduction Data Registers This appendix contains several tables

Διαβάστε περισσότερα

Εισαγωγή. Σύνοψη βασικών εννοιών, 5-stage pipeline, επεκτάσεις για λειτουργίες πολλαπλών κύκλων

Εισαγωγή. Σύνοψη βασικών εννοιών, 5-stage pipeline, επεκτάσεις για λειτουργίες πολλαπλών κύκλων Εισαγωγή Σύνοψη βασικών εννοιών, 5-stage pipeline, επεκτάσεις για λειτουργίες πολλαπλών κύκλων 1 Παράγοντες που επηρεάζουν την επίδοση της CPU CPU time = Seconds = Instructions Cycles Seconds --------------

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές --

ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές -- ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Χειµερινό Εξάµηνο ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές -- Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy)

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Static Scheduling Ιάκωβος Μαυροειδής Τεχνικές ελάττωσης stalls. CPI = Ideal CPI + Structural stalls + RAW stalls + WAR stalls + WAW stalls + Control stalls Θα μελετήσουμε

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Καθυστερήσεις και Εκκενώσεις Εντολών

Διαβάστε περισσότερα

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

Τελική Εξέταση, Απαντήσεις/Λύσεις ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMΜY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 Τελική Εξέταση, Απαντήσεις/Λύσεις Άσκηση 1: Assembly για

Διαβάστε περισσότερα

Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms)

Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms) Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms) 1 Εντολές Διακλάδωσης Περίπου 20% των εντολών είναι εντολές διακλάδωσης Πολλά στάδια μεταξύ υπολογισμού του επόμενου PC και εκτέλεσης του branch

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές --

ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές -- ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές -- Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές --

ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές -- ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 17: Δυναμικός Παραλληλισμός Εντολών -- Superscalar Επεξεργαστές -- Διδάσκων: Χάρης Θεοχαρίδης Αναπληρωτης Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy)

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές

ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή από

Διαβάστε περισσότερα

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

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση Αρης Ευθυμίου Το σημερινό μάθημα Υπόβαθρο: Διοχέτευση (Pipelining) Βασική οργάνωση Δομικοί κίνδυνοι Κίνδυνοι δεδομένων (hazards): RAW, WAR, WAW Stall

Διαβάστε περισσότερα

Instruction-Level Parallelism and its Dynamic Exploitation. Κεφάλαια 4o Computer Architecture-A Quantitative Approach 3 rd Edition

Instruction-Level Parallelism and its Dynamic Exploitation. Κεφάλαια 4o Computer Architecture-A Quantitative Approach 3 rd Edition Instruction-Level Parallelism and its Dynamic Exploitation Κεφάλαια 4o Computer Architecture-A Quantitative Approach 3 rd Edition Basic Pipeline Για την αποφυγή ενός pipeline stall πρέπει µια εξαρτώµενη

Διαβάστε περισσότερα

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

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath O επεξεργαστής: Η δίοδος δεδοµένων (path) και η µονάδα ελέγχου (control) Σχεδίαση path 4 κατηγορίες εντολών: Αριθµητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη µνήµη (lw, sw) I

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Δευτέρα, 3 Νοεμβρίου 25 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΛΕΠΤΑ Για πλήρη

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Οργάνωση επεξεργαστή Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

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

Κεντρική Μονάδα Επεξεργασίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch: HOMEWORK 4 Problem a For the fast loading case, we want to derive the relationship between P zz and λ z. We know that the nominal stress is expressed as: P zz = ψ λ z where λ z = λ λ z. Therefore, applying

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Σύγχρονοι υπολογιστές Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Διάλεξη 11 Προώθηση (Forwarding)

Διάλεξη 11 Προώθηση (Forwarding) ΗΥ 3 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη Προώθηση (Forwarding) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων (HY3) Η μέχρι τώρα μικρο-αρχιτεκτονική του MIPS ID/EX PCSrc Control WB

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr

Διαβάστε περισσότερα

Υποθετική Εκτέλεση Εντολών

Υποθετική Εκτέλεση Εντολών Υποθετική Εκτέλεση Εντολών ( Speculation (Hardware-Based Τεχνικές βελτίωσης του CPI register renaming δυναμική εκτέλεση Pipeline CPI = Ideal pipeline CPI + Structural Stalls + Data Hazard Stalls + υπερβαθμωτή

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διασωλήνωση Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

Α. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw.

Α. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw. ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΡ ΙΟ ΥΠΟΛΟΟ ΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua. gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ

Διαβάστε περισσότερα

Main source: "Discrete-time systems and computer control" by Α. ΣΚΟΔΡΑΣ ΨΗΦΙΑΚΟΣ ΕΛΕΓΧΟΣ ΔΙΑΛΕΞΗ 4 ΔΙΑΦΑΝΕΙΑ 1

Main source: Discrete-time systems and computer control by Α. ΣΚΟΔΡΑΣ ΨΗΦΙΑΚΟΣ ΕΛΕΓΧΟΣ ΔΙΑΛΕΞΗ 4 ΔΙΑΦΑΝΕΙΑ 1 Main source: "Discrete-time systems and computer control" by Α. ΣΚΟΔΡΑΣ ΨΗΦΙΑΚΟΣ ΕΛΕΓΧΟΣ ΔΙΑΛΕΞΗ 4 ΔΙΑΦΑΝΕΙΑ 1 A Brief History of Sampling Research 1915 - Edmund Taylor Whittaker (1873-1956) devised a

Διαβάστε περισσότερα

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Multi Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining)

Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining) Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining) 1 Διασωλήνωση (Pipelining) Διασωληνώση: επικαλυπτόμενη εκτέλεση πολλαπλών εντολών σε ένα κύκλο του ρολογιού, όπως σε

Διαβάστε περισσότερα

1.1 ΑΣΚΗΣΗ ΛΥΣΗ 2.1 ΑΣΚΗΣΗ ΛΥΣΗ 3.1 ΑΣΚΗΣΗ

1.1 ΑΣΚΗΣΗ ΛΥΣΗ 2.1 ΑΣΚΗΣΗ ΛΥΣΗ 3.1 ΑΣΚΗΣΗ 1.1 ΑΣΚΗΣΗ i) Έστω ότι οι εντολές κινητής υποδιαστολής ευθύνονται για το 25% του χρόνου εκτέλεσης ενός προγράµµατος σε ένα µηχάνηµα. Προτείνεται να βελτιωθεί το υλικό που σχετίζεται µε αριθµούς κινητής

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls)

Διάλεξη 12 Καθυστερήσεις (Stalls) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 12 Καθυστερήσεις (Stalls) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ 1 Καθυστερήσεις και Εκκενώσεις Εντολών Οι κίνδυνοι δεδομένων (data

Διαβάστε περισσότερα

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Single Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Μαθηµα 2 ηµήτρης Λιούπης 1 Intel SA-1110 µc StrongARM core. System-on-Chip. Εξέλιξη των SA-110 και SA-1100. 2 ARM cores ARM: IP (intellectual

Διαβάστε περισσότερα

Υπερβαθµωτή Οργάνωση Υπολογιστών

Υπερβαθµωτή Οργάνωση Υπολογιστών Υπερβαθµωτή Οργάνωση Υπολογιστών Από τις βαθµωτές στις υπερβαθµωτές αρχιτεκτονικές αγωγού Ανάγνωση εντολής (Instruction Fetch) Σε µία αρχιτεκτονική πλάτους s, πρέπει διαβάζονται s εντολές σε κάθε κύκλο

Διαβάστε περισσότερα

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

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες! Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Η υπολογιστική

Διαβάστε περισσότερα

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

Προχωρηµένα Θέµατα Αρχιτεκτονικής Προχωρηµένα Θέµατα Αρχιτεκτονικής Fundamentals of Computer Design. Λιούπης Αύξηση απόδοσης µικροεπεξεργαστών Αύξηση των παρεχόµενων στο χρήστη δυνατοτήτων Κυριαρχία των βασισµένων σε µικροεπεξεργαστές

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Υ- 07 Παράλληλα Συστήματα Αρχιτεκτονική σύγχρονων πυρήνων επεξεργαστών

Υ- 07 Παράλληλα Συστήματα Αρχιτεκτονική σύγχρονων πυρήνων επεξεργαστών Υ- 07 Παράλληλα Συστήματα Αρχιτεκτονική σύγχρονων πυρήνων επεξεργαστών Αρης Ευθυμίου Διαδικαστικά Ιστοσελίδα μαθήματος: h:p://www.cs.uoi.gr/~plmy07/ Διαφάνειες μαθημάτων, κτλ 2 Γρήγορη εκτέλεση σειριακού

Διαβάστε περισσότερα

Assalamu `alaikum wr. wb.

Assalamu `alaikum wr. wb. LUMP SUM Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. LUMP SUM Lump sum lump sum lump sum. lump sum fixed price lump sum lump

Διαβάστε περισσότερα

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

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

Διαβάστε περισσότερα

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

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ι Γ. Τσιατούχας 2 ο Κεφάλαιο ιάρθρωση 1. Οργάνωση της 2. εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

Διαβάστε περισσότερα

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

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 6-7 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

Διαβάστε περισσότερα

Κάθε functional unit χρησιμοποιείται μια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης!

Κάθε functional unit χρησιμοποιείται μια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης! Single-cyle υλοποίηση: Διάρκεια κύκλου ίση με τη μεγαλύτερη εντολή-worst case delay (εδώ η lw) = χαμηλή απόδοση! Αντιβαίνει με αρχή: Κάνε την πιο απλή περίπτωση γρήγορη (ίσως και εις βάρος των πιο «σύνθετων»

Διαβάστε περισσότερα

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 5ο μάθημα: πρόβλεψη διακλάδωσης, διαφοροποιημένη διοχέτευση, χρονοπρογραμματισμός Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου

Διαβάστε περισσότερα

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 10ο μάθημα: Ορια παραλληλίας επιπέδου εντολής και πολυνηματικοί επεξεργαστές Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Ορια

Διαβάστε περισσότερα

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Συστήματα Διαχείρισης Βάσεων Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Φροντιστήριο 9: Transactions - part 1 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Tutorial on Undo, Redo and Undo/Redo

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Όλοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι του 10000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Αν κάπου κάνετε κάποιες υποθέσεις

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Πρόγνωση διακλαδώσεων. Εξαρτήσεις και εκτέλεση εκτός σειράς. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών

Διαβάστε περισσότερα

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required) Phys460.nb 81 ψ n (t) is still the (same) eigenstate of H But for tdependent H. The answer is NO. 5.5.5. Solution for the tdependent Schrodinger s equation If we assume that at time t 0, the electron starts

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Back- end: χρονοπρογραμματισμός, εντολές προσπέλασης μνήμης

Υ- 01 Αρχιτεκτονική Υπολογιστών Back- end: χρονοπρογραμματισμός, εντολές προσπέλασης μνήμης Υ- 01 Αρχιτεκτονική Υπολογιστών Back- end: χρονοπρογραμματισμός, εντολές προσπέλασης μνήμης Αρης Ευθυμίου Το σημερινό μάθημα Execu9on scheduling wake- up and select specula9ve wake- up Εκτέλεση εντολών

Διαβάστε περισσότερα

[1] P Q. Fig. 3.1

[1] P Q. Fig. 3.1 1 (a) Define resistance....... [1] (b) The smallest conductor within a computer processing chip can be represented as a rectangular block that is one atom high, four atoms wide and twenty atoms long. One

Διαβάστε περισσότερα

Section 8.3 Trigonometric Equations

Section 8.3 Trigonometric Equations 99 Section 8. Trigonometric Equations Objective 1: Solve Equations Involving One Trigonometric Function. In this section and the next, we will exple how to solving equations involving trigonometric functions.

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Front- end: Προσκόμιση, αποκωδικοποίηση, μετονομασία καταχωρητών

Υ- 01 Αρχιτεκτονική Υπολογιστών Front- end: Προσκόμιση, αποκωδικοποίηση, μετονομασία καταχωρητών Υ- 01 Αρχιτεκτονική Υπολογιστών Front- end: Προσκόμιση, αποκωδικοποίηση, μετονομασία καταχωρητών Αρης Ευθυμίου Το σημερινό μάθημα Προσκόμιση (fetch) πολλαπλές εντολές ανά κύκλο Μετονομασία καταχωρητών

Διαβάστε περισσότερα

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

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

Διαβάστε περισσότερα

2η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ακ. έτος , 5ο Εξάμηνο Σχολή ΗΜ&ΜΥ

2η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ακ. έτος , 5ο Εξάμηνο Σχολή ΗΜ&ΜΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ Α Σ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ Ι Κ Ω Ν Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.

Διαβάστε περισσότερα

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

ΗΜΥ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές Διδάσκων: Χάρης Θεοχαρίδης Αναπληρωτής Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) [Προσαρμογή

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο

Διαβάστε περισσότερα

CHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS

CHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS CHAPTER 5 SOLVING EQUATIONS BY ITERATIVE METHODS EXERCISE 104 Page 8 1. Find the positive root of the equation x + 3x 5 = 0, correct to 3 significant figures, using the method of bisection. Let f(x) =

Διαβάστε περισσότερα

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2.

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2. ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2. Pipelining (Αν υπάρχει χρόνος) Θα ξαναπάμε πίσω στο Κεφ.3αργότερα. ΕΠΛ 221--

Διαβάστε περισσότερα

Section 1: Listening and responding. Presenter: Niki Farfara MGTAV VCE Seminar 7 August 2016

Section 1: Listening and responding. Presenter: Niki Farfara MGTAV VCE Seminar 7 August 2016 Section 1: Listening and responding Presenter: Niki Farfara MGTAV VCE Seminar 7 August 2016 Section 1: Listening and responding Section 1: Listening and Responding/ Aκουστική εξέταση Στο πρώτο μέρος της

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011 Διάρκεια Διαγωνισμού: 3 ώρες Απαντήστε όλες τις ερωτήσεις Μέγιστο Βάρος (20 Μονάδες) Δίνεται ένα σύνολο από N σφαιρίδια τα οποία δεν έχουν όλα το ίδιο βάρος μεταξύ τους και ένα κουτί που αντέχει μέχρι

Διαβάστε περισσότερα