Processor-Memory (DRAM) Διαφορά επίδοςθσ
|
|
- Ὡρος Αλεξίου
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Performance Processor-Memory (DRAM) Διαφορά επίδοςθσ µproc 6%/yr Processor-Memory Performance Gap: (grows 5% / year) DRAM 7%/yr. cslab@ntua 22-23
2 Ιεραρχία μνιμθσ One or more levels (Static RAM): Level : On-chip 6-64K Level 2: On or Off-chip 28-52K Level 3: Off-chip 28K-8M Dynamic RAM (DRAM) 6M-6G Part of The On-chip CPU Datapath Registers Registers Cache Main Memory Όςο απομακρυνόμαςτε από τθ CPU : Μικρότερο κόςτοσ/bit Μεγαλφτερθ χωρθτικότθτα Μεγαλφτεροσ χρόνοσ πρόςβαςθσ-κακυςτζρθςθ Χαμθλότεροσ ρυκμόσ εξόδου Interface: SCSI, RAID, IDE, 394 4G-G Magnetic Disc Optical Disk or Magnetic Tape cslab@ntua
3 Παράδειγμα Ιεραρχίασ Μνιμθσ (με 2 επίπεδα cache) Processor Μεγαλφτερθ Ταχφτθτα Μεγαλφτερθ Χωρθτικότθτα Datapath Control Registers On-Chip Level One Cache L Second Level Cache (SRAM) L 2 Main Memory (DRAM) Virtual Memory, Secondary Storage (Disk) Tertiary Storage (Tape) Ταχφτθτα : -5ns ns 3ns 5ns Μζγεκοσ : <KB <256KB <8MB <4GB Bandwidth : 5GB/s 5GB/s 25GB/s 4GB/s ms >GB MB/s sec TB cslab@ntua
4 Το μοντζλο τθσ Ιεραρχίασ Μνιμθσ Disk memory μζγεκοσ : 5bytes 64KB 52MB GB ταχφτθτα :,25ns ns ns 5ms cslab@ntua
5 Παράδειγμα Ιεραρχίασ μνιμθσ Digital PWS 6 au - Alpha 264 CPU 6MHz CPU Level Capacity Throughput Latency 32 registers W L cache 2W L2 cache.5mw ext.l3 cache 64MW main memory Register 52B 24GB/sec 2ns L cache 8KB 6GB/sec 2ns L2 cache 96KB 8GB/sec 6ns L3 cache 4MB 888MB/sec 24ns Main Mem 52MB GB/sec 2ns GW Disk space cslab@ntua
6 Τυπικζσ Αρχιτεκτονικζσ IBM Power 3: L = 64 KB, 28-way set associative L2 = 4 MB, direct mapped, line size = 28, write back Compaq EV6 (Alpha 2264): L = 64 KB, 2-way associative, line size= 32 L2 = 4 MB (or larger), direct mapped, line size = 64 HP PA: no L2 PA85, PA86: L =.5 MB PA87: L = 2.25 MB AMD Athlon: L = 64 KB, L2 = 256 KB Intel Pentium 4: L = 8 KB, L2 = 256 KB Intel Itanium: L = 6 KB, 4-way associative L2 = 96 KB, 6-way associative L3 = off chip, size varies cslab@ntua
7 Γιατί είναι ωφζλιμθ θ Ιεραρχία Μνιμθσ; Κατά κανόνα τα προγράμματα προςπελαφνουν ζνα μικρό μόνο μζροσ του ςυνόλου των διευκφνςεων (εντολζσ/δεδομζνα) κατά τθν εκτζλεςθ ενόσ ςυγκεκριμζνου τμιματόσ τουσ Δφο είδθ τοπικότθτασ δεδομζνων: Temporal Locality: Στοιχεία που ζχουν πρόςφατα προςπελαςτεί τείνουν να προςπελαφνονται ξανά ςτο άμεςο μζλλον Spatial locality: Γειτονικά ςτοιχεία όςων ζχουν ιδθ προςπελαςτεί, ζχουν αυξθμζνθ πικανότθτα να προςπελαςτοφν ςτο άμεςο μζλλον Η φπαρξθ τοπικότθτασ ςτισ αναφορζσ ενόσ προγράμματοσ, κακιςτά εφικτι τθ δυνατότθτα να ικανοποιοφνται θ αίτθςθ για δεδομζνα από επίπεδα μνήμησ που βρίςκονται ιεραρχικά ανώτερα
8 Ορολογία block line - page : θ μικρότερθ μονάδα μεταφοράσ δεδομζνων μεταξφ των επιπζδων μνιμθσ To Processor From Processor Upper Level Memory Blk X Lower Level Memory Blk Y cslab@ntua
9 Ορολογία hit : το block βρίςκεται ςε κάποια κζςθ του εξεταηόμενου επιπζδου μνιμθσ hit rate : hits/ςυνολικζσ προςπελάςεισ μνιμθσ hit time : χρόνοσ προςπζλαςθσ των δεδομζνων miss : το block δεν υπάρχει ςτο εξεταηόμενο επίπεδο μνιμθσ miss rate : (hit rate) miss penalty : (χρόνοσ μεταφοράσ των δεδομζνων ενόσ block ςτο ςυγκεκριμζνο επίπεδο μνιμθσ) + (χρόνοσ απόκτθςθσ των δεδομζνων από τθν CPU) access time : χρόνοσ απόκτθςθσ τθσ θσ λζξθσ transfer time : χρόνοσ απόκτθςθσ των υπόλοιπων λζξεων cslab@ntua
10 H Βάςθ τθσ Ιεραρχίασ Μνιμθσ Οι δίςκοι περιζχουν όλα τα δεδομζνα Όταν ο επεξεργαςτισ χρειάηεται κάποιο ςτοιχείο, αυτό ανεβαίνει ςε ανϊτερα επίπεδα μνιμθσ Η cache περιζχει αντίγραφα των ςτοιχείων τθσ μνιμθσ που ζχουν χρθςιμοποιθκεί Η μνιμθ περιζχει αντίγραφα των ςτοιχείων του δίςκου που ζχουν χρθςιμοποιθκεί 22-23
11 4 Ερωτιςεισ για τισ caches Ποφ μπορεί να τοποκετθκεί ζνα block ςε ζνα ψθλότερο επίπεδο ςτθν ιεραρχία μνιμθσ; Τοποκζτθςθ block : direct-mapped, fully associative, set-associative Πϊσ βρίςκουμε ζνα block ςτα διάφορα επίπεδα μνιμθσ; Αναγνϊριςθ ενόσ block : Tag / Block Ποιο από τα ιδθ υπάρχοντα block τθσ cache πρζπει να αντικαταςτακεί ςε περίπτωςθ ενόσ miss; Μθχανιςμόσ αντικατάςταςθσ block : Random, Least Recently Used (LRU), FIFO Τι ςυμβαίνει όταν μεταβάλλουμε το περιεχόμενο ενόσ block; μθχανιςμοί εγγραφισ : write-through ή write-back write-allocate ή no-write-allocate cslab@ntua 22-23
12 Οργάνωςθ τθσ Cache Τοποκζτθςθ ενόσ block μνιμθσ ςτθν cache Direct mapped : (διεφκυνςθ block) mod (αρ. block ςτθν cache) Set associative : (διεφκυνςθ block) mod (αρ. sets ςτθν cache) Fully associative : οπουδιποτε! cslab@ntua
13 Οργάνωςθ τθσ Cache Αρ. Block To block 2 μπαίνει οπουδιποτε To block 2 μπαίνει μόνο ςτο block 4 (=2 mod 8) Αρ. Block Αρ. Block To block 2 μπαίνει οπουδιποτε μζςα ςτο set (=2 mod 4) Cache Αρ. Block διεφκυνςθ του block frame Μνιμθ Cache με 8 blocks και μνιμθ με 32 blocks cslab@ntua
14 Τα πεδία διεφκυνςθσ Φυςικι Διεφκυνςθ ( CPU ) Tag Διεφκυνςθ του Block Index Block Offset Επιλογι Set Επιλογι Δεδομζνων cslab@ntua
15 Τα πεδία διεφκυνςθσ Φυςικι Διεφκυνςθ ( CPU ) Tag Διεφκυνςθ του Block Index Block Offset Μζγεκοσ block offset = log2(μζγεκοσ block) Μζγεκοσ Index = log2( Συνολικόσ αρικμόσ blocks/associativity) Μζγεκοσ tag = μζγεκοσ address - μζγεκοσ index - μζγεκοσ offset cslab@ntua
16 Οργάνωςθ τθσ Cache : Direct Mapped Cache Κάκε block μπορεί να αποκθκευκεί μόνο ςε μία κζςθ : (διεφκυνςθ block) MOD (Αρ. blocks ςτθν cache) ςτο παράδειγμά μασ: (διεφκυνςθ block address) MOD (8) cache 8 cache block frames 32 memory blocks cacheable () MOD () = Μνιμθ cslab@ntua
17 Παράδειγμα : Direct Mapped Cache Tag field Διεφκυνςθ (κζςθ των bit) Index field 2 byte offset tag index index valid tag data 2 24 Blocks Κάκε block = λζξθ Μπορεί να αποκθκεφςει 2 32 bytes μνιμθσ data Hlt cslab@ntua
18 Παράδειγμα : Direct Mapped Cache 4K blocks Κάκε block = 4 words v b its 2 8 b its tag Tag field tag Διεφκυνςθ (κζςθ των bit) Index field index 2 data byte offset Επιλογι λζξθσ block offset data 4K είςοδοι Mux 3 2 Καλφτερθ αξιοποίθςθ τθσ spatial locality cslab@ntua
19 4-Way Set Associative Cache: (MIPS) Tag Field Διεφκυνςθ Index Field In d e x V T a g D a ta V T a g D a ta V T a g D a ta V T a g D a ta sets 24 block frames Hlt 4 to multiplexer data cslab@ntua
20 Οργάνωςθ τθσ Cache : Set Associative Cache -way set associative (direct mapped) block Tag Data Χωρθτικότθτα cache : 8 words way set associative Set Tag Data Tag Data 2 3 Set 4-way set associative Tag Data Tag Data Tag Data Tag Data 8-way set associative (fully associative) Tag Data Tag Data Tag Data Tag Data Tag Data Tag Data Tag Data Tag Data cslab@ntua
21 Παράδειγμα οργάνωςθσ cache-διευκυνςιοδότθςθ L cache με 28 cache block frames Κάκε block frame περιζχει 4 λζξεισ (6 bytes) 6-bit διευκφνςεισ μνιμθσ ςτθν cache (64Kbytes κφρια μνιμθ ι 496 blocks μνιμθσ) Δείξτε τθν οργάνωςθ τθσ cache (mapping) και τα πεδία διευκφνςεων τθσ cache για: Fully Associative cache. Direct mapped cache. 2-way set-associative cache. cslab@ntua
22 Fully Associative Case Valid bit V V Oι 28 tags ελζγχονται παράλλθλα από το hardware κατά τθν τοποκζτθςθ ενόσ data block ςτθν cache V Διεφκυνςθ του Block = 2bits Tag = 2bits Block Offset = 4bits cslab@ntua
23 Direct Mapped Cache Valid bit V V V Μόνο ζνα tag ελζγχεται παράλλθλα από το hardware κατά τθν τοποκζτθςθ ενόσ data block ςτθν cache V Διεφκυνςθ του Block = 2bits Tag = 5bits Index = 7bits Block Offset = 4bits cslab@ntua Κφρια Μνιμθ 23
24 2-Way Set-Associative Cache Δφο tags ςε ζνα set ελζγχονται παράλλθλα από το hardware κατά τθν τοποκζτθςθ ενόσ data block ςτθν cache Διεφκυνςθ του Block = 2bits Tag = 6bits Index = 6bits Block Offset = 4bits cslab@ntua Κφρια Μνιμθ 24
25 Προςπζλαςθ δεδομζνων ςε Direct Mapped Cache Η CPU καλεί προσ ανάγνωςθ τισ εξισ διευκφνςεισ: x4 x48 xc x44 διεφκυνςθ 4 8 C C C Κφρια μνιμθ τιμι τθσ λζξθσ a b c d e f g h i j k l cslab@ntua
26 8ΚΒ Direct-mapped cache 4W blocks Αρχικά όλεσ οι κζςεισ invalid index valid tag x-3 x4-7 x8-b xc-f cslab@ntua
27 8ΚΒ Direct-mapped cache 4W blocks Read (x4) index valid tag x-3 x4-7 x8-b xc-f Read block : invalid data ςτο block! cslab@ntua
28 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f a b c d Φόρτωςε τα ηθτοφμενα δεδομζνα ςτθν cache! cslab@ntua
29 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f a b c d Επζςτρεψε το b (κζςθ ) ςτθν CPU cslab@ntua
30 8ΚΒ Direct-mapped cache 4W blocks Read (x48) index valid tag x-3 x4-7 x8-b xc-f a b c d Read block 4 : invalid data ςτο block 4! cslab@ntua
31 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f a b c d e f g h 5 5 Φόρτωςε τα ηθτοφμενα δεδομζνα ςτθν cache και κάνε το block valid! cslab@ntua
32 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f a b c d e f g h Επζςτρεψε ςτθν CPU τθν τιμι g! cslab@ntua
33 8ΚΒ Direct-mapped cache 4W blocks Read (xc) index valid tag x-3 x4-7 x8-b xc-f a b c d e f g h Read block! cslab@ntua
34 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f a b c d e f g h To πεδίο tag ζχει τθ ςωςτι τιμι! Άρα επιςτρζφεται θ τιμι d cslab@ntua
35 8ΚΒ Direct-mapped cache 4W blocks Read (x44) index valid tag x-3 x4-7 x8-b xc-f a b c d e f g h Read block! cslab@ntua
36 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f a b c d e f g h 5 5 Valid data αλλά το πεδίο tag δεν είναι το ςωςτό 2!= Miss : πρζπει να αντικαταςτακεί το block με νζα δεδομζνα cslab@ntua
37 8ΚΒ Direct-mapped cache 4W blocks Read index valid tag x-3 x4-7 x8-b xc-f i j k l e f g h Φόρτωςε το ςωςτό περιεχόμενο και ςτείλε το j ςτθν CPU cslab@ntua
38 Υπολογιςμόσ του αρικμοφ των bits που χρειάηονται Πόςα bits ςυνολικά χρειάηονται ςε μία direct-mapped cache με 64 KBytes data και blocks τθσ λζξθσ, για 32-bit διευκφνςεισ; 64 Kbytes = 6 Kwords = 2 4 words = 2 4 blocks Block size = 4 bytes => offset size = 2 bits, #sets = #blocks = 2 4 => index size = 4 bits Tag size = address size - index size - offset size = =6 bits Bits/block = data bits + tag bits + valid bit = = 49 Bits τθσ cache = #blocks x bits/block = 2 4 x 49 = 98 Kbytes Πόςα bits ςυνολικά χρειάηονται ςε μία 4-way set associative cache για τθν αποκικευςθ των ίδιων δεδομζνων; Block size και #blocks δεν αλλάηει. #sets = #blocks/4 = (2 4 )/4 = 2 2 => index size = 2 bits Tag size = address size - index size - offset = = 8 bits Bits/block = data bits + tag bits + valid bit = = 5 Bits τθσ cache = #blocks x bits/block = 2 4 x 5 = 2 Kbytes Αφξθςθ του associativity => Αφξθςθ των bits τθσ cache cslab@ntua
39 Υπολογιςμόσ του αρικμοφ των bits που χρειάηονται Πόςα bits ςυνολικά χρειάηονται ςε μία direct- mapped cache με 64KBytes data και blocks των 8 λζξεων, για 32-bit διευκφνςεισ (2 32 bytes μποροφν να αποκθκευκοφν ςτθ μνιμθ); 64 Kbytes = 2 4 words = (2 4 )/8 = 2 blocks block size = 32 bytes => offset size = block offset + byte offset = 5 bits #sets = #blocks = 2 => index size = bits tag size = address size - index size - offset size = = 6 bits bits/block = data bits + tag bits + valid bit = 8 x = 273 bits bits in cache = #blocks x bits/block = 2 x 273 = Kbytes Αφξθςθ του μεγζκουσ του block => Μείωςθ των bits τθσ cache. cslab@ntua
40 Μθχανιςμοί αντικατάςταςθσ ενόσ block τθσ cache Random (τυχαία) επιλογι ενόσ τυχαίου block με βάςθ κάποια ψευδοτυχαία ακολουκία απλι υλοποίθςθ ςτο hardware είναι θ τεχνικι που χρθςιμοποιείται ςυνικωσ LRU (least recently used) αντικακιςτάται το block που δεν ζχει χρθςιμοποιθκεί για περιςςότερθ ϊρα ακριβι υλοποίθςθ ςτο hardware FIFO (first in - first out) - αντικακιςτάται το block που ζχει ειςαχκεί πρϊτο ςτθν cache cslab@ntua
41 Μθχανιςμοί εγγραφισ ςε block (ςε περίπτωςθ write hit/miss) Σε περίπτωςθ write-hit, γνωςτοποιείται θ αλλαγι ςτθν κφρια μνιμθ ; ναι : write-through όχι : write-back Σε περίπτωςθ write-miss, τοποκετείται το block ςτθν cache; ναι : write-allocate (ςυνικωσ με write-back) όχι : write-no-allocate (ςυνικωσ με write-through) cslab@ntua
42 Write Policies: Write-Back & Write-Through write-back: ενθμζρωςθ τθσ μνιμθσ μόνο κατά τθν απομάκρυνςθ του block από τθν cache οι εγγραφζσ πραγματοποιοφνται με τθν ταχφτθτα τθσ cache dirty bit κατά τθν τροποποίθςθ αντικατάςταςθ των clean block χωρίσ ενθμζρωςθ τθσ μνιμθσ Χαμθλό ποςοςτό misses Πολλζσ εγγραφζσ ενόσ block ςε μία ενθμζρωςθ write-through: ενθμζρωςθ τθσ μνιμθσ ςε κάκε εγγραφι το κατϊτερο ιεραρχικά επίπεδο περιζχει τα εγκυρότερα δεδομζνα εφκολθ υλοποίθςθ (εξαςφάλιςθ data coherency) αυξθμζνθ μετακίνθςθ δεδομζνων προσ τθ μνιμθ ςυχνά χρθςιμοποιείται ζνασ write buffer για αποφυγι κακυςτεριςεων όςο ενθμερϊνεται θ μνιμθ
43 Write Through vs Write Back Write Through - the information is written to both the block in the cache and to the block in the lower-level memory. Pros - read miss never results in writes to main memory - easy to implement - main memory always has the most current copy of the data (consistent) Cons - write is slower - every write needs a main memory access - as a result uses more memory bandwidth Write Back - the information is written only to the block in the cache. The modified cache block is written to main memory only when it is replaced. To reduce the frequency of writing back blocks on replacement, a dirty bit is commonly used. This status bit indicates whether the block is dirty (modified while in the cache) or clean (not modified). A clean block is not written on a miss. Pros - writes occur at the speed of the cache memory - multiple writes within a block require only one write to main memory - as a result uses less memory bandwidth Cons -harder to implement - main memory is not always consistent with cache - reads that result in replacement may cause writes of dirty blocks to main memory cslab@ntua
44 Write-Allocate & Write-no-allocate (ςτθ περίπτωςθ write-miss) Write-allocate: το block ενθμερϊνεται ςτθ μνιμθ και μετά μεταφζρεται από τθ μνιμθ ςτθ cache Write-no-allocate: το block ενθμερϊνεται ςτθ μνιμθ και δεν μεταφζρεται ςτθ cache Allocate a cache line to store the memory block! cslab@ntua
45 Read hit / miss read hit : ανάγνωςθ των δεδομζνων από τθν cache read miss : μεταφορά ολόκλθρου του block που περιζχει τα δεδομζνα που αναηθτάμε ςτθν cache και ςτθ ςυνζχεια όπωσ ςτο read hit cslab@ntua
46 Write hit / miss Write-back & Write-allocate write hit: Εγγραφι των δεδομζνων ςτθν cache (μόνο). Το block είναι dirty Η κφρια μνιμθ ενθμερϊνεται μόνο όταν απομακρυνκεί το block από τθν cache write miss: Το block: Ενθμερϊνεται ςτθ μνιμθ μεταφζρεται ςτθν cache Στθ ςυνζχεια όπωσ ςτο write hit cslab@ntua
47 Write hit / miss Write-through & write-no-allocate write hit: Εγγραφι των νζων δεδομζνων ςτθν cache Ενθμζρωςθ τθσ κφρια μνιμθσ write miss: Εγγραφι μόνο ςτθν κφρια μνιμθ Δεν εμπλζκεται κακόλου θ cache cslab@ntua
48 Write Back with Write Allocate: on hits it writes to cache setting dirty bit for the block, main memory is not updated; on misses it updates the block in main memory and brings the block to the cache; Subsequent writes to the same block, if the block originally caused a miss, will hit in the cache next time, setting dirty bit for the block. That will eliminate extra memory accesses and result in very efficient execution compared with Write Through with Write Allocate combination. Write Back with No Write Allocate: on hits it writes to cache setting dirty bit for the block, main memory is not updated; on misses it updates the block in main memory not bringing that block to the cache; Subsequent writes to the same block, if the block originally caused a miss, will generate misses all the way and result in very inefficient execution. cslab@ntua
49 Write Through with Write Allocate: on hits it writes to cache and main memory on misses it updates the block in main memory and brings the block to the cache Bringing the block to cache on a miss does not make a lot of sense in this combination because the next hit to this block will generate a write to main memory anyway (according to Write Through policy) Write Through with No Write Allocate: on hits it writes to cache and main memory; on misses it updates the block in main memory not bringing that block to the cache; Subsequent writes to the block will update main memory because Write Through policy is employed. So, some time is saved not bringing the block in the cache on a miss because it appears useless anyway. cslab@ntua
50 8ΚΒ Direct-mapped cache - 4W blocks write through Write (x44), m index valid tag x-3 x4-7 x8-b xc-f i j k l e f g h Read block 4! cslab@ntua
51 8ΚΒ Direct-mapped cache - 4W blocks write through Write index valid tag x-3 x4-7 x8-b xc-f i j k l e m g h 5 5 Valid data - ςωςτό tag εγγραφι ςτο πεδίο τθσ cache και ενθμζρωςθ τθσ κφριασ μνιμθσ! cslab@ntua
52 8ΚΒ Direct-mapped cache - 4W blocks write back Write (x44), m Ind. V dirty tag x-3 x4-7 x8-b xc-f i j k l e f g h 5 5 Read block 4! cslab@ntua
53 8ΚΒ Direct-mapped cache - 4W blocks write back Write Ind. V dirty tag x-3 x4-7 x8-b xc-f i j k l e m g h 5 5 Valid data - ςωςτό tag εγγραφι ςτο πεδίο τθσ cache dirty bit! και ενθμζρωςθ του cslab@ntua
54 8ΚΒ Direct-mapped cache - 4W blocks write back Read (x84c) Ind. V dirty tag x-3 x4-7 x8-b xc-f i j k l e m g h 5 5 Read block 4! cslab@ntua
55 8ΚΒ Direct-mapped cache - 4W blocks write back Read Ind. V dirty tag x-3 x4-7 x8-b xc-f i j k l e m g h 5 5 Valid data το πεδίο tag όμωσ δεν ταιριάηει :!=4 Το dirty bit είναι : Ενθμερϊνεται θ μνιμθ (x4-x4f) και ςτθ ςυνζχεια φορτϊνεται θ ςωςτι διεφκυνςθ cslab@ntua
56 8ΚΒ Direct-mapped cache - 4W blocks write back Read Ind. V dirty tag x-3 x4-7 x8-b xc-f i j k l 4 p q r s 5 5 Φορτϊνεται θ ςωςτι διεφκυνςθ - ενθμερϊνονται τα πεδία tag - dirty Επιςτρζφεται θ τιμι r ςτθ CPU cslab@ntua
57 Επίδοςθ των επιπζδων μνιμθσ (performance) μζςοσ χρόνοσ προςπζλαςθσ των δεδομζνων (access time) t avg t hit miss rate t miss penalty cslab@ntua
58 Cache : ενοποιθμζνθ ι όχι; Ενοποιθμζνθ για εντολζσ και δεδομζνα (unified) Μικρότερο καταςκευαςτικό κόςτοσ Καλφτερο ιςοηφγιςμα του χϊρου που καταλαμβάνεται από εντολζσ/δεδομζνα Επιπλζον misses λόγω διεκδίκθςθσ κοινϊν κζςεων ςτθν cache (conflict misses) Δφο διαφορετικζσ caches για εντολζσ και δεδομζνα (data cache & instruction cache) 2-πλάςιο εφροσ ηϊνθσ όχι conflict misses cslab@ntua
59 Παράδειγμα Σε ποια περίπτωςθ ζχουμε καλφτερθ επίδοςθ; Σε ςφςτθμα με 6ΚΒ instruction cache και 6ΚΒ data cache ι ςε ςφςτθμα με 32ΚΒ unified cache; Υποκζτουμε ότι το 36% των εντολϊν είναι εντολζσ αναφοράσ ςτθ μνιμθ (load/store). hit time = clock cycle miss penalty = clock cycles ςτθ unified cache είναι: hit time = 2 clock cycles Χρθςιμοποιείςτε τα δεδομζνα του ακόλουκου πίνακα (αναφζρονται ςε εντολζσ): Instr.cache data cache unified cache 6KB KB cslab@ntua
60 Παράδειγμα (ςυνζχεια) Λφςθ misses miss rate mem accesses miss miss miss rate 6 KB instr cache rate rate 6 KB data cache 32 KB unif cache % %.4 =.324 miss rate (unified cache) < miss rate (instr + data cache) cslab@ntua
61 Παράδειγμα (ςυνζχεια) Λφςθ t avg t instr t data 74 %.4 26 % t avg μζςοσ χρόνοσ/access (instr+data cache) < μζςοσ χρόνοσ/access (unified cache) cslab@ntua
62 Cache Associativity Παρατιρθςθ : Μια 4-way cache ζχει ςχεδόν το ίδιο hit rate με μια direct-mapped cache διπλάςιου μεγζκουσ cslab@ntua
63 Μζγεκοσ των Cache Blocks tag data (χϊροσ για μεγάλο block) Σε μεγάλα cache blocks επωφελοφμαςτε από τθν spatial locality. Λιγότεροσ χϊροσ απαιτείται για tag (με δεδομζνθ χωρθτικότθτα τθσ cache) Υπερβολικά μεγάλο μζγεκοσ block ςπαταλάει το χϊρο τθσ cache Τα μεγάλα blocks απαιτοφν μεγαλφτερο χρόνο μεταφοράσ (transfer time). Ζνασ καλόσ ςχεδιαςμόσ απαιτεί ςυμβιβαςμοφσ!
64 Μζγεκοσ Block και Miss Rate Κανόνασ : το μζγεκοσ του block πρζπει να είναι μικρότερο από τθν τετραγωνικι ρίηα του μεγζκουσ τθσ cache. cslab@ntua
65 Miss Rates Caches διαφορετικοφ μεγζκουσ, Associativity & αλγορίκμουσ αντικατάςταςθσ block Associativity: 2-way 4-way 8-way Μζγεκοσ LRU Random LRU Random LRU Random 6 KB 5.8% 5.69% 4.67% 5.29% 4.39% 4.96% 64 KB.88% 2.%.54%.66%.39%.53% 256 KB.5%.7%.3%.3%.2%.2% cslab@ntua
66 Επίδοςθ των caches Για CPU με ζνα μόνο επίπεδο (L) cache και κακόλου κακυςτζρθςθ όταν ζχουμε cache hit: Με ιδανικι μνιμθ Χρόνοσ CPU = (κφκλοι ρολογιοφ κατά τθ λειτουργία τθσ CPU + κφκλοι ρολογιοφ λόγω κακυςτζρθςθσ από προςπζλαςθ τθσ μνιμθσ(mem stalls)) x χρόνοσ κφκλου ρολογιοφ Mem stalls = (Αναγνϊςεισ x miss rate αναγνϊςεων x miss penalty αναγνϊςεων) + (Εγγραφζσ x miss rate εγγραφϊν x miss penalty εγγραφϊν) Αν τα miss penalties των αναγνϊςεων και των εγγραφϊν είναι ίδια: Mem stalls = Προςπελάςεισ μνιμθσ x Miss rate x Miss penalty cslab@ntua
67 Χρόνοσ εκτζλεςθσ χρόνοσ αρικμόσ κφκλοι χρόνοσ = x x εκτζλεςθσ εντολϊν εντολι κφκλου αρικμόσ κφκλοι CPU + κφκλοι μνιμθσ χρόνοσ εντολϊν εντολι εντολι κφκλου = x x αρικμόσ κφκλοι CPU + αναφορζσ x κφκλοι μνιμθσ χρόνοσ εντολϊν εντολι εντολι αναφορά κφκλου = x x Αρχιτεκτονικι του Instruction Set Τεχνολογία του Compiler Υλοποίθςθ τθσ CPU Ιεραρχία Μνιμθσ και Cache cslab@ntua
68 Επίδοςθ των caches CPUtime = Instruction count x CPI x Χρόνοσ κφκλου ρολογιοφ CPI execution = CPI με ιδανικι μνιμθ CPI = CPI execution + Mem stalls/εντολι CPUtime = Instruction Count x (CPI execution + Mem stalls/εντολι) x χρόνοσ κφκλου ρολογιοφ Mem stalls/εντολι = Προςπελάςεισ μνιμθσ/εντολι x Miss rate x Miss penalty CPUtime = IC x (CPI execution + Προςπελάςεισ μνιμθσ ανά εντολι x Miss rate x Miss penalty) x Χρόνοσ κφκλου ρολογιοφ Misses/εντολι = Προςπελάςεισ μνιμθσ ανά εντολι x Miss rate CPUtime = IC x (CPI execution + Misses/εντολι x Miss penalty) x Χρόνοσ κφκλου ρολογιοφ(c) cslab@ntua
69 Παράδειγμα Ζςτω μία CPU λειτουργεί με ρολόι 2 MHz (5 ns/cycle) και cache ενόσ επιπζδου. CPI execution =. Εντολζσ: 5% arith/logic, 3% load/store, 2% control Υποκζτουμε cache miss rate =.5% και miss penalty = 5 cycles. CPI = CPI execution + Mem stalls/εντολι Mem Stalls/εντολι = Mem accesses /εντολι x Miss rate x Miss penalty Mem accesses /εντολι = +.3 =.3 Instruction fetch Mem Stalls /εντολι =.3 x.5 x 5 =.975 CPI = = 2.75 Load/store Η ιδανικι CPU χωρίσ misses είναι 2.75/. =.88 φορζσ γρθγορότερθ cslab@ntua
70 Παράδειγμα Στο προθγοφμενο παράδειγμα υποκζτουμε ότι διπλαςιάηουμε τθ ςυχνότθτα του ρολογιοφ ςτα 4 MHZ. Πόςο γρθγορότερο είναι το μθχάνθμα για ίδιο miss rate και αναλογία εντολϊν; Δεδομζνου ότι θ ταχφτθτα τθσ μνιμθσ δεν αλλάηει, το miss penalty καταναλϊνει περιςςότερουσ κφκλουσ CPU: Miss penalty = 5 x 2 = cycles. CPI =. +.3 x.5 x = = 3.5 Speedup = (CPI old x C old )/ (CPI new x C new ) = 2.75 x 2 / 3.5 =.36 Το νζο μθχάνθμα είναι μόνο.36 φορζσ ταχφτερο και όχι 2 φορζσ γρθγορότερο λόγω τθσ επιπλζον επιβάρυνςθσ των cache misses. CPUs με μεγαλφτερη ςυχνότητα ρολογιοφ, ζχουν περιςςότερουσ κφκλουσ/cache miss και μεγαλφτερη επιβάρυνςη τησ μνήμησ ςτο CPI. cslab@ntua
71 2 επίπεδα Cache: L, L 2 CPU L Cache Hit Rate = H, Hit time = κφκλοσ (κακόλου Stall) L 2 Cache Hit Rate = H 2, Hit time = T 2 κφκλοι Main Memory Penalty λόγω προςπζλαςθσ μνιμθσ, M cslab@ntua
72 Cache 2 επιπζδων CPUtime = IC x (CPI execution + Mem Stalls/εντολι) x C Mem Stalls/εντολι = Mem accesses/εντολι x Stalls/access Για ζνα ςφςτθμα με 2 επίπεδα cache, χωρίσ penalty όταν τα δεδομζνα βρεκοφν ςτθν L cache: Stalls/memory access = [miss rate L ] x [ Hit rate L 2 x Hit time L 2 + Miss rate L 2 x Memory access penalty) ] = (-H) x H2 x T2 + (-H)(-H2) x M L Miss, L2 Hit L Miss, L2 Miss: Προςπζλαςθ τθσ Main Memory cslab@ntua
73 Επίδοςθ τθσ L2 Cache Memory Access Tree (CPU Stalls/Memory Access) CPU Memory Access L L Hit: Stalls = H x = (No Stall) L Miss: % = (-H) L 2 L2 Hit: (-H) x H2 x T2 L2 Miss: Stalls = (-H)(-H2) x M Stall cycles per memory access = (-H) x H2 x T2 + (-H)(-H2) x M cslab@ntua
74 Παράδειγμα L2 Cache CPU με CPI execution =. και ςυχνότθτα 5 MHZ.3 memory accesses/εντολι. L cache : ςτα 5 MHZ με miss rate 5% L 2 cache : ςτα 25 MHZ με miss rate 3%, (T 2 = 2 κφκλοι) M (Memory access penalty) = κφκλοι. Να βρεκεί το CPI. CPI = CPI execution + Mem Stalls/εντολι Χωρίσ Cache, CPI =. +.3 x = 3. Με L Cache, CPI =. +.3 x.5 x = 7.6 Mem Stalls/εντολι = Mem accesses/εντολι x Stalls/access Stalls/memory access = (-H) x H2 x T2 + (-H)(-H2) x M =.5 x.97 x x.3 x = =.247 Mem Stalls/εντολι = Mem accesses/εντολι x Stalls/access =.247 x.3 =.32 CPI = =.42 Speedup = 7.6/.42 = 5.35 cslab@ntua
75 3 επίπεδα Cache CPU L Cache L2 Cache Hit Rate = H, Hit time = κφκλοσ (κακόλου Stall) Hit Rate = H 2, Hit time = T 2 κφκλοι L3 Cache Hit Rate = H 3, Hit time = T 3 Main Memory Memory access penalty, M cslab@ntua
76 Επίδοςθ τθσ L3 Cache CPUtime = IC x (CPI execution + Mem Stalls/εντολι) x C Mem Stalls/εντολι = Mem accesses /εντολι x Stalls/access Για ζνα ςφςτθμα με 3 επίπεδα cache, χωρίσ penalty όταν τα δεδομζνα βρεκοφν ςτθν L cache: Stalls/memory access = [miss rate L ] x [ Hit rate L 2 x Hit time L 2 + Miss rate L 2 x (Hit rate L3 x Hit time L 3 + Miss rate L 3 x Memory access penalty) ] = (-H) x H2 x T2 + (-H) x (-H2) x H3 x T3 + (-H)(-H2) (-H3)x M cslab@ntua
77 Επίδοςθ τθσ L3 Cache Memory Access Tree (CPU Stalls/Memory Access) CPU Memory Access L L Hit: Stalls = H x = (κακόλου Stall) L Miss: % = (-H) L 2 L2 Hit: (-H) x H2 x T2 L2 Miss: % = (-H)(-H2) L 3 L3 Hit: (-H) x (-H2) x H3 x T3 L3 Miss: (-H)(-H2)(-H3) x M Stalls/memory access = (-H) x H2 x T2 + (-H) x (-H2) x H3 x T3 + (-H)(-H2) (-H3) x M cslab@ntua
78 Παράδειγμα L3 Cache CPU με CPI execution =. και ςυχνότθτα 5 MHZ.3 memory accesses/εντολι. L cache : ςτα 5 MHZ με miss rate 5% L 2 cache : ςτα 25 MHZ με miss rate 3%, (T 2 = 2 κφκλοι) L 3 cache : ςτα MHZ με miss rate.5%, (T 3 = 5 κφκλοι) Memory access penalty, M= cycles. Να βρείτε το CPI. χωρίσ Cache, CPI =. +.3 x = 3. Με L Cache, CPI =. +.3 x.5 x = 7.6 Με L 2 Cache, CPI =. +.3 x (.5 x.97 x x.3 x ) =.42 CPI = CPI execution + Mem Stalls/εντολι Mem Stalls/εντολι = Mem accesses/εντολι x Stall cycles/access Stalls/memory access = (-H) x H2 x T2 + (-H) x (-H2) x H3 x T3 + (-H)(-H2) (-H3) x M =.5 x.97 x x.3 x.985 x x.3 x.5 x = =.7 CPI =. +.3 x.7 =.24 Speedup ςε ςχζςθ με L μόνο = 7.6/.24 = 6.2 Speedup ςε ςχζςθ με L, L2 =.42/.24 =.5 cslab@ntua
Processor-Memory (DRAM) ιαφορά επίδοσης
Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 Performance Processor-Memory Performance Gap: (grows 5% /
Διαβάστε περισσότεραProcessor-Memory (DRAM) Διαφορά επίδοσης
Performance Processor-Memory (DRAM) Διαφορά επίδοσης 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 µproc 6%/yr Processor-Memory Performance Gap: (grows 5%
Διαβάστε περισσότεραProcessor-Memory (DRAM) ιαφορά επίδοσης
Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 Performance Processor-Memory Performance Gap: (grows 5% /
Διαβάστε περισσότεραΟργάνωση Ιεραρχίας Μνήμης - Caches
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Οργάνωση Ιεραρχίας Μνήμης - Caches Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό
Διαβάστε περισσότεραΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 7ο μάθημα: Κρυφές μνήμες (cache) - εισαγωγή Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Σύστημα μνήμης! Η μνήμη είναι σημαντικό
Διαβάστε περισσότεραProcessor-Memory (DRAM) ιαφορά επίδοσης
Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 Performance Processor-Memory Performance Gap: (grows 5% /
Διαβάστε περισσότεραProcessor-Memory (DRAM) ιαφορά επίδοσης
Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr Processor-Memory Performance Gap: (grows 5% / year) DRAM 7%/yr. Performance 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999
Διαβάστε περισσότεραΔιάλεξη 15 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 5 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πόσο μεγάλη είναι μια μνήμη cache;
Διαβάστε περισσότεραΚεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)
Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα
Διαβάστε περισσότεραΥ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Κρυφές μνήμες
Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Κρυφές μνήμες Αρης Ευθυμίου Το σημερινό μάθημα Κρυφές μνήμες (cache memory) Βασική οργάνωση, παράμετροι: γραμμές, συσχετιστικότητα, συνολική χωρητικότητα Επίδοση:
Διαβάστε περισσότεραΕίδθ των Cache Misses: 3C s
Είδθ των Cache Misses: 3C s 1 Compulsory: Συμβαίνουν κατά τθν πρϊτθ πρόςβαςθ ςε ζνα block. Το block πρζπει να κλθκεί από χαμθλότερα επίπεδα μνιμθσ και να τοποκετθκεί ςτθν cache (αποκαλοφνται και cold start
Διαβάστε περισσότεραΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή
ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή Αρης Ευθυμίου Σύστημα μνήμης Η μνήμη είναι σημαντικό κομμάτι ενός υπολογιστή Επηρεάζει κόστος, ταχύτητα, κατανάλωση
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ιεραρχία συχνά και το
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διαβάστε περισσότεραΙεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Για βελτίωση της απόδοσης
Διαβάστε περισσότεραCach O p i timisati tions
Cache Optimisations i 1 Διαφορά Επίδοσης Processor-Memory Performance Gap: (grows 50% / year) 2 SRAM vs DRAM 1-transistor DRAM cell 6-transistor SRAM cell 3 Intel 45nm 6T SRAM cell 4 Ιεραρχία Μνήμης Πρέπει
Διαβάστε περισσότεραΠροχωρηµένα Θέµατα Αρχιτεκτονικής
Προχωρηµένα Θέµατα Αρχιτεκτονικής Memory Hierarchy Design. Λιούπης Ιεραρχία Μνήµης Τα προγράµµατα απαιτούν όλο και περισσότερη και πιο γρήγορη µνήµη Γρήγορη και µεγάλη µνήµη -> ακριβή Αυτό οδηγεί σε ιεραρχία
Διαβάστε περισσότεραΤμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering Οργάνωση και Σχεδίαση Η/Y (HY232) Εργαστήριο 8 Χειμερινό Εξάμηνο 2016-2017 1. Προσομοίωση λειτουργίας ιεραρχίας
Διαβάστε περισσότεραΜάθημα 9 ο ΤΕΧΝΙΚΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΙΚΟΝΙΚΗΣ ΜΝΗΜΗΣ
Μάθημα 9 ο ΤΕΧΝΙΚΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΙΚΟΝΙΚΗΣ ΜΝΗΜΗΣ Ειςαγωγό Όπωσ είδαμε, ο χϊροσ εικονικϊν διευκφνςεων μνιμθσ που χρθςιμοποιεί κάκε διεργαςία, είναι αρκετά μεγαλφτεροσ από το χϊρο των φυςικϊν διευκφνςεων.
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΔΙΑΛΕΞΕΙΣ 6-7: ΚΡΥΦΗ ΜΝΗΜΗ (Cache)
ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΕΙΣ 6-7: ΚΡΥΦΗ ΜΝΗΜΗ (Cache) Διδάσκων: Χάρης Θεοχαρίδης, ΗΜΜΥ ttheocharides@ucy.ac.cy [Προσαρμογή από Computer Architecture, Hennessy & Patterson,
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διαβάστε περισσότερα(advanced_ca, ακ. έτος Cache Optimisations
Cache Optimisations Διαφορά Επίδοσης Processor-Memory Performance Gap: (grows 50% / year) Ιεραρχία Μνήμης Πρέπει να μειώσουμε το processor-memory performance gap Η προσπέλαση δεδομένων (code & data) δεν
Διαβάστε περισσότεραΕθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης.
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Εικονική Μνήμη Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διαβάστε περισσότεραΑσκήσεις Caches
Ασκήσεις Caches 1 Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4-way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1
Διαβάστε περισσότεραΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφάλαιο 5: Ιεραρχία Μνήμης Memory Hierarchy
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφάλαιο 5: Ιεραρχία Μνήμης Memory Hierarchy 1 Main Memory Secondary Memory CPU Bus Input/Output Μια από τις κυριότερες λειτουργίες ενός υπολογιστικού
Διαβάστε περισσότεραΕΠΛ 605: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018 ΕΡΓΑΣΙΑ 3 (13/10/2018) Ηµεροµηνία Παράδοσης δεύτερου µέρους: 18/10/2018
ΕΠΛ 605: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018 ΕΡΓΑΣΙΑ 3 (13/10/2018) Ηµεροµηνία Παράδοσης δεύτερου µέρους: 18/10/2018 Ηµεροµηνία Παράδοσης πρώτου µέρους: 25/10/2018 Θα πρέπει να παραδώσετε
Διαβάστε περισσότεραΤελική Εξέταση, Απαντήσεις/Λύσεις
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMΜY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 Τελική Εξέταση, Απαντήσεις/Λύσεις Άσκηση 1: Assembly για
Διαβάστε περισσότεραΔΙΑΛΕΞΕΙΣ 6-7: ΚΡΥΦΗ ΜΝΗΜΗ (Cache)
ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΕΙΣ 6-7: ΚΡΥΦΗ ΜΝΗΜΗ (Cache) Διδάσκουσα: ΜΑΡΙΑ Κ ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucyaccy) [Προσαρµογή από Computer Architecture, Hennessy
Διαβάστε περισσότεραΕπανάληψη Ιεραρχία Μνήμης Memory Hierarchy. Κεφάλαιο 5- Ιεραρχία Μνήμης
Επανάληψη Ιεραρχία Μνήμης Memory Hierarchy 1 Ιδεατά θέλουμε να ισχύει για μια μνήμη: Άπειρη, γρήγορη και φτηνή μνήμη 2 Πραγματικότητα 3 Υπάρχει λύση; 4 Τοπικότητα Αναφοράς/Χρήσης (Locality of Reference)
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΤΕΛΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Τετάρτη, 21 Δεκεμβρίου 2016 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΩΡΕΣ Για πλήρη
Διαβάστε περισσότεραΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Ενότητα 7(α) - Ιεραρχία Μνήμης
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Ενότητα 7(α) Ιεραρχία Μνήμης 1 Οργάνωση Συστήματος Μνήμης Μια από τις κυριότερες λειτουργίες ενός υπολογιστικού συστήματος ηαποθήκευσηκαιηανάκλησηπληροφοριώναπότιςμονάδες
Διαβάστε περισσότεραΆσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ,
Ασκήσεις Caches Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1 byte
Διαβάστε περισσότεραΕίδη των Cache Misses: 3C s
Είδη των Cache Misses: 3C s 1 Compulsory: Συμβαίνουν κατά την πρώτη πρόσβαση σε ένα block. Το block πρέπει να κληθεί από χαμηλότερα επίπεδα μνήμης και να τοποθετηθεί στην cache (αποκαλούνται και cold start
Διαβάστε περισσότεραΕικονικι Μνιμθ (virtual memory)
Εικονικι Μνιμθ (virtual memory) Πολλά προγράμματα εκτελοφνται ταυτόχρονα ςε ζνα υπολογιςτι Η ςυνολικι μνιμθ που απαιτείται είναι μεγαλφτερθ από το μζγεκοσ τθσ RAM Αρχι τοπικότθτασ (θ μνιμθ χρθςιμοποιείται
Διαβάστε περισσότεραΕθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης. Cache Optimizations
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Cache Optimizations Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διαβάστε περισσότεραΔιάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 H Μικρο-αρχιτεκτονική μας 4 1 0 PCSrc IF/ID Control ID/EX
Διαβάστε περισσότεραΘέµατα Φεβρουαρίου
Θέµατα Φεβρουαρίου 2-2 cslab@ntua 2- Θέµα ο (3%): Έστω η παρακάτω ακολουθία εντολών που χρησιµοποιείται για την αντιγραφ από µια θέση µνµης σε µια άλλη (memory-to-memory copy): lw $2, ($) sw $2, 2($) i)
Διαβάστε περισσότεραΑσκήσεις Caches. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης
Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Ασκήσεις Caches http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΚεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)
Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς
Διαβάστε περισσότεραΑσκήσεις Caches
Ασκήσεις Caches 1 Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4-way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1
Διαβάστε περισσότεραΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ
ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ ελιδοποίθςθ (1/10) Σόςο θ κατάτμθςθ διαμεριςμάτων ςτακεροφ μεγζκουσ όςο και θ κατάτμθςθ διαμεριςμάτων μεταβλθτοφ και άνιςου μεγζκουσ δεν κάνουν
Διαβάστε περισσότεραΕπανάληψη Ιεραρχία Μνήμης Memory Hierarchy. Κεφάλαιο 5- Ιεραρχία Μνήμης
Επανάληψη Ιεραρχία Μνήμης Memory Hierarchy 1 Οργάνωση Συστήματος Μνήμης Ένα υπολογιστικό σύστημα συνήθως διαθέτει πολλούς τύπους μνήμης Registers, buffers, caches, main memory, secondary memory (flash/ssd,
Διαβάστε περισσότεραΕιςαγωγή ςτην πληροφορική
Ειςαγωγή ςτην πληροφορική Δρ. Θεοδώρου Παύλοσ theodorou@uoc.gr Δομή ηλεκτρονικού υπολογιςτή - Υλικό Μια γενικι διάκριςθ ςυςτατικϊν που ςυνκζτουν ζναν Η/Υ (πόροι *resources]) Μονάδα ειςόδου (Input unit)
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ
Διαβάστε περισσότεραCMOS Technology for Computer Architects
CMOS Technology for Computer Architects Iakovos Mavroidis Giorgos Passas Manolis Katevenis Lecture 13: On chip SRAM Technology FORTH ICS / EURECCA & UoC GREECE ABC A A E F A BCDAECF A AB C DE ABCDAECF
Διαβάστε περισσότερα3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ntua.gr 3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr
Διαβάστε περισσότεραΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ
2/9/5 ΗΜΥ 32 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή από Computer Architecture,
Διαβάστε περισσότεραHY225 Οργϊνωςη Υπολογιςτών
HY225 Οργϊνωςη Υπολογιςτών Διδϊςκοντεσ: Δ. Νικολόπουλοσ, Χ. ωτηρύου. http://www.csd.uoc.gr/~hy225 1 Πωσ μετρϊμε την Απόδοςη; Ορίηουμε Απόδοςθ = 1/(Χρόνοσ Εκτζλεςθσ) «Χ είναι ν φορζσ γρθγορότερο από το
Διαβάστε περισσότεραΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 6 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Β
ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ 6 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Β Δυναμικι Κατάτμθςθ (1/8) Η δυναμικι κατάτμθςθ αναπτφχκθκε με ςτόχο να ξεπεραςτοφν οριςμζνεσ από τισ βαςικζσ δυςκολίεσ τθσ κατάτμθςθσ ςτακεροφ
Διαβάστε περισσότεραΕνσωµατωµένα Υπολογιστικά Συστήµατα (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
Διαβάστε περισσότεραΕπιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης
Διαβάστε περισσότεραΕπανάληψη Ιεραρχία Μνήμης Memory Hierarchy. Κεφάλαιο 5- Ιεραρχία Μνήμης
Επανάληψη Ιεραρχία Μνήμης Memory Hierarchy 1 Ιδεατά θέλουμε να ισχύει για μια μνήμη: Άπειρη, γρήγορη και φτηνή μνήμη 2 Πραγματικότητα 3 Υπάρχει λύση; 4 Τοπικότητα Αναφοράς/Χρήσης (Locality of Reference)
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότερα3. Η ιεραρχία της μνήμης
Κεφάλαιο 3: Η ιεραρχία της μνήμης 44 3. Η ιεραρχία της μνήμης 3.1.1 Η τεχνολογία της ιεραρχημένης μνήμης Για τους προγραμματιστές θα ήταν επιθυμητό να γινόταν προπέλαση σε απεριόριστες ποσότητες μνήμης
Διαβάστε περισσότεραΥ- 01 Αρχιτεκτονική Υπολογιστών Ιεραρχία μνήμης: προχωρημένα θέματα
Υ- 01 Αρχιτεκτονική Υπολογιστών Ιεραρχία μνήμης: προχωρημένα θέματα Αρης Ευθυμίου Το σημερινό μάθημα Εικονική μνήμη και κρυφές μνήμες Physical/Virtual indexing Σκοπός: μείωση hit Ome Τεχνικές σχετικές
Διαβάστε περισσότεραVirtual Memory. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης
Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 24-25 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Virtual Memory http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό
Διαβάστε περισσότεραHY425 Αρχιτεκτονική Υπολογιστών, Χειµερινό Εξάµηνο
Review from last lecture HY425 Αρχιτεκτονική Υπολογιστών Διάλεξη 04 Δηµήτρης Νικολόπουλος, Αναπληρωτής Καθηγητής Τµήµα Επιστήµης Υπολογιστών Πανεπιστήµιο Κρήτης Speed Up Pipeline Depth; if ideal CPI is
Διαβάστε περισσότεραΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Ενότητα 7 Ιεραρχία Μνήμης
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Ενότητα 7 Ιεραρχία Μνήμης 1 Οργάνωση Συστήματος Μνήμης Μια από τις κυριότερες λειτουργίες ενός υπολογιστικού συστήματος είναι η αποθήκευση και
Διαβάστε περισσότεραΑ. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw.
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΡ ΙΟ ΥΠΟΛΟΟ ΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua. gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ
Διαβάστε περισσότεραΤέτοιες λειτουργίες γίνονται διαμέσου του
Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου
Διαβάστε περισσότεραΣχεδιασµός της Ιεραρχίας Μνήµης. Pedro Trancoso
Σχεδιασµός της Ιεραρχίας Μνήµης Pedro Trancoso H&P Appendix C H&P Chapter 5 Μνήµη GIER Computer, Norway, ca. 1962 Micron, Automata Processor, 2014 2 1 Η Αρχή... Ideally one would desire an indefinitely
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 11: Κρυφή Μνήμη Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Υποσύστημα Μνήμης
Προηγμένοι Μικροεπεξεργαστές Υποσύστημα Μνήμης An unbalanced system CPU Memory 2011-01-17 Εργαστήριο Ηλεκτρονικών Εφαρμογών 2 Memory Wall Στους πρώτους μικροεπεξεργαστές: Η μνήμη τόσο γρήγορη όσο και ο
Διαβάστε περισσότεραΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ
ΗΜΥ 32 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ Διδάσκων: Χάρης Θεοχαρίδης, ΗΜΜΥ ttheocharides@ucy.ac.cy [Προσαρμογή από Computer Architecture, Hennessy & Patterson,
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 11: Κρυφή Μνήμη Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραΑςκιςεισ ςε (i) Δομζσ Ευρετθρίων και Οργάνωςθ Αρχείων (ii) Κανονικοποίθςθ
Αςκιςεισ ςε (i) Δομζσ Ευρετθρίων και Οργάνωςθ Αρχείων (ii) Κανονικοποίθςθ Δεκζμβριοσ 2016 Άςκθςθ 1 Θεωρείςτε ότι κζλουμε να διαγράψουμε τθν τιμι 43 ςτο Β+ δζντρο τθσ Εικόνασ 1. Η διαγραφι αυτι προκαλεί
Διαβάστε περισσότεραΕίδη των Cache Misses: 3C s
Είδη των Cache Misses: 3C s Compulsory: Συµβαίνουν κατά την πρώτη πρόσβαση σε ένα block. Το block πρέπει να κληθεί από χαµηλότερα επίπεδα µνήµης και να τοποθετηθεί στην cache (αποκαλούνται και cold start
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι
Παράςταςη κινητήσ υποδιαςτολήσ ςφμφωνα με το πρότυπο ΙΕΕΕ Δρ. Χρήστος Ηλιούδης το πρότυπο ΙΕΕΕ 754 ζχει χρθςιμοποιθκεί ευρζωσ ςε πραγματικοφσ υπολογιςτζσ. Το πρότυπο αυτό κακορίηει δφο βαςικζσ μορφζσ κινθτισ
Διαβάστε περισσότεραΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Ενότητα 7 Ιεραρχία Μνήμης
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Ενότητα 7 Ιεραρχία Μνήμης 1 Οργάνωση Συστήματος Μνήμης Μια από τις κυριότερες λειτουργίες ενός υπολογιστικού συστήματος είναι η αποθήκευση και
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΙεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ρχιτεκτονική Υπολογιστών 2016-17 Εικονική Μνήμη (και ο ρόλος της στην ιεραρχία μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Δευτερεύουσα μνήμη
Διαβάστε περισσότεραΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 9 θ & 10 θ Διάλεξθ Ιδεατι Μνιμθ Μζροσ Β
1 ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ 9 θ & 10 θ Διάλεξθ Ιδεατι Μνιμθ Μζροσ Β 2 ελιδοποίθςθ με Χριςθ Ιδεατισ Μνιμθσ (1/5) Ο όροσ ιδεατή μνήμη ςυνικωσ ςχετίηεται με ςυςτιματα τα οποία εφαρμόηουν ςελιδοποίθςθ, παρόλο που
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ
Διαβάστε περισσότεραΠαράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2
Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2 Δρ. Χρήζηος Ηλιούδης Μθ Προςθμαςμζνοι Ακζραιοι Εφαρμογζσ (ςε οποιαδιποτε περίπτωςθ δεν χρειάηονται αρνθτικοί αρικμοί) Καταμζτρθςθ. Διευκυνςιοδότθςθ.
Διαβάστε περισσότεραΤμήματα Μνήμησ Υπολογιςμόσ Φυςικών διευθύνςεων. Εκπαιδεφτρια: Μαρία Πολίτθ
Τμήματα Μνήμησ Υπολογιςμόσ Φυςικών διευθύνςεων Εκπαιδεφτρια: Μαρία Πολίτθ Σύνδεςη με προηγούμενα Κάκε μονάδα ενόσ υπολογιςτι που χρθςιμεφει για τθ μόνιμθ ι προςωρινι αποκικευςθ δεδομζνων ανικει ςτθ μνήμη
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΥ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές
Υ- 01 Αρχιτεκτονική Υπολογιστών Πολυεπεξεργαστές Αρης Ευθυμίου Το σημερινό μάθημα! Εισαγωγή σε παράλληλα συστήματα Ταξινόμιση κατά Flynn Μέθοδοι επικοινωνίας: shared memory, message passing Δίκτυα διασύνδεσης!
Διαβάστε περισσότεραΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι
ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ Αρχείο (File) Φάκελοσ (Folder) Διαχειριςτισ Αρχείων (File Manager) Τφποι Αρχείων Σε τι εξυπθρετεί θ οργάνωςθ των εργαςιϊν μασ ςτουσ υπολογιςτζσ; Πϊσ κα οργανϊςουμε
Διαβάστε περισσότεραΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:
ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ονοματεπώνυμο: ΑΜ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (τμήμα Μ - Ω) Κανονική εξεταστική Φεβρουαρίου
Διαβάστε περισσότεραSMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)
SMPcache Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache) 1. Βασικές ρυθμίσεις του συστήματος: δημιουργία μια δικής μας σύνθεσης συστήματος. Το SMPcache είναι ένα εργαλείο με το οποίο μπορούμε
Διαβάστε περισσότεραΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 8 θ Διάλεξθ Ιδεατι Μνιμθ Μζροσ Α
ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ 8 θ Διάλεξθ Ιδεατι Μνιμθ Μζροσ Α Βαςικι Ορολογία Ιδεατή Μνήμη: χιμα ανάκεςθσ αποκθκευτικοφ χϊρου, ςτο οποίο θ δευτερεφουςα μνιμθ μπορεί να διευκυνςιοδοτθκεί ςαν να ιταν μζροσ τθσ κφριασ
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual memory)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual memory) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Προβλήματα φυσικής μνήμης (1) Τι θα συμβεί εάν η μνήμη
Διαβάστε περισσότεραΕνότητα 2: Η κρυφή µνήµη και η λειτουργία της
Ενότητα 2: Η κρυφή µνήµη και η λειτουργία της Στην ενότητα αυτή θα αναφερθούµε εκτενέστερα στη λειτουργία και την οργάνωση της κρυφής µνήµης. Θα προσδιορίσουµε τις βασικές λειτουργίες που σχετίζονται µε
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραi Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης i Στα σύγχρονα
Διαβάστε περισσότεραΖητήµατα Απόδοσης. Ιεραρχία Μνήµης. Αναγκαιότητα για Ιεραρχία Μνήµης. Processor-DRAM Gap (latency) Ε-85: Ειδικά Θέµατα Λογισµικού
Ε-85: Ειδικά Θέµατα Λογισµικού Προγραµµατισµός Συστηµάτων Υψηλών Επιδόσεων Χειµερινό Εξάµηνο 2009-10 «Ιεραρχία Μνήµης και Τεχνικές Βελτιστοποίησης» Παναγιώτης Χατζηδούκας (Π.Δ. 407/80) Ζητήµατα Απόδοσης
Διαβάστε περισσότεραΤεχνολογίες Κύριας Μνήμης
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κύρια Μνήμη
Διαβάστε περισσότεραΑποθήκευση εδομένων. ομή ενός Σ Β. Εισαγωγή Το «εσωτερικό» ενός ΜΕΡΟΣ Β : Η (εσωτερική) αρχιτεκτονική ενός Σ Β είναι σε επίπεδα
Αποθήκευση εδομένων Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 ΜΕΡΟΣ Β : Εισαγωγή Το «εσωτερικό» ενός Σ Β ομή ενός Σ Β Η (εσωτερική) αρχιτεκτονική ενός Σ Β είναι σε επίπεδα Τυπικά, κάθε σχέση σε ένα
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2011-12 Εικονική (και ο ρόλος της στην ιεραρχία μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Ιεραρχία η νέα τάση: [2011]
Διαβάστε περισσότεραadd $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 add $t2, $t2, $s1 int i, j, tmp; int *arr, n;
Άσκηση 1 η Μέρος Α Ζητούμενο: Δίνεται το παρακάτω πρόγραμμα σε C καθώς και μια μετάφραση του σε assembly MIPS. Συμπληρώστε τα κενά. Σας υπενθυμίζουμε ότι ο καταχωρητής $0 (ή $zero) είναι πάντα μηδέν. int
Διαβάστε περισσότεραΚρυφή Μνήµη. Λειτουργικά Συστήµατα ΙΙ UNIX. Μάθηµα: Aναπλ. Καθ. Κ. Λαµπρινουδάκης ιδάσκων: &καιτοπλήθοςτωνπλαισίωντηςκρυφήςµνήµης
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX Τρόπος Απεικόνισης Μπλόκ της Κύριας Μνήµης σε Πλαίσια της Κρυφής Μνήµης (placement policy) Μάθηµα: Λειτουργικά Συστήµατα ΙΙ UNIX Κρυφή Μνήµη Οργάνωση κρυφής µνήµης ιδάσκων:
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Paging & Segmentation
Προηγμένοι Μικροεπεξεργαστές Paging & Segmentation Segmentation Τεχνική για σπάσουμε την μνήμη σε λογικά κομμάτια Κάθε κομμάτι αποθηκεύει πληροφορία σχετική με data segments for each process code segments
Διαβάστε περισσότεραΟργάνωση Υπολογιστών (ΙI)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (ΙI) (κύρια και κρυφή μνήμη) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό
Διαβάστε περισσότεραΠΛΕ- 027 Μικροεπεξεργαστές
ΠΛΕ- 027 Μικροεπεξεργαστές 10ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Εικονική μνήμη, σχεδίαση αποδοτικής κρυφής μνήμης, προγραμματισμός για κρυφή μνήμη Αρης Ευθυμίου Εικονική μνήμη ως cache Η κύρια
Διαβάστε περισσότεραΔιπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ: ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ: ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων
Διαβάστε περισσότερα