Transactional Memory

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

Download "Transactional Memory"

Transcript

1 Transactional Memory

2 Τα προβλήματα του παράλληλου προγραμματισμού Εντοπισμός παραλληλισμού χειροκίνητα (επισκόπηση) αυτόματα (compiler) Έκφραση παραλληλισμού low-level (π.χ. Pthreads, MPI) high-level (π.χ. OpenMP, Cilk, Intel TBB, Galois, UPC κ.λπ.) Απεικόνιση scheduling, creation, termination, etc. operating system, runtime system Συγχρονισμός εύκολος όπως ο coarse-grain αποδοτικός όπως ο fine-grain deadlock-free composable Απαιτήσεις κλιμακωσιμότητα ευκολία προγραμματισμού υψηλή παραγωγικότητα ορθότητα architectural awareness

3 Transactional Memory (TM) Memory transaction μία ατομική και απομονωμένη ακολουθία λειτουργιών μνήμης εμπνευσμένη από τις δοσοληψίες στις ΒΔ Atomicity (all or nothing) στο, όλες οι εγγραφές μνήμης αποκτούν επίδραση «με τη μία» σε περίπτωση abort, καμία από τις εγγραφές δεν έχουν επίδραση Isolation κανένα άλλο τμήμα κώδικα δεν μπορεί να δει τις εγγραφές ενός transaction πριν το Consistency (serializability) τα αποτελέσματα των transactions είναι συνεπή (ίδια με αυτά της σειριακής/σειριοποιημένης εκτέλεσης) τα transactions φαίνονται ότι κάνουν σειριακά η συγκεκριμένη σειρά ωστόσο δεν είναι εγγυημένη

4 Προγραμματισμός με ΤΜ Περιγραφή συγχρονισμού σε υψηλό επίπεδο ο προγραμματιστής λέει τι, όχι πώς Το υποκείμενο σύστημα υλοποιεί το συγχρονισμό εξασφαλίζει atomicity, isolation & consistency

5 Αμοιβαίος αποκλεισμός vs. TM Thread 1 Thread 2 Thread 3 Thread 1 Thread 2 Thread 3 lock(l) acq. unlock(l) lock(l) acq. lock(l) tx-begin wr A tx-end tx-begin rd B wr B tx-end tx-begin rd A conflict! unlock(l) acq. tx-end unlock(l) Αναμενόμενο κέρδος σε περίπτωση μη-conflict Επιβράδυνση σε conflicts (R-W ή W-W)

6 Πλεονεκτήματα ΤΜ Ευκολία προγραμματισμού παραπλήσια με αυτή των coarse-grain locks ο προγραμματιστής δηλώνει, το σύστημα υλοποιεί Επίδοση παραπλήσια με αυτή των fine-grain locks εκμεταλλεύεται αυτόματα τον fine-grain ταυτοχρονισμό δεν υπάρχει tradeoff ανάμεσα στην απόδοση & την ορθότητα Failure atomicity & recovery δεν «χάνονται» locks όταν ένα thread αποτυγχάνει failure recovery = transaction abort + restart Composability σύνθεση επιμέρους ατομικών λειτουργιών / software modules σε μία ενιαία ατομική λειτουργία ασφαλής & κλιμακώσιμη

7 Παράδειγμα: Java 1.4 HashMap Map: key value not thread-safe

8 Synchronized HashMap Η λύση της Java 1.4: synchronized layer ρητό, coarse-grain locking από τον προγραμματιστή Coarse-grain synchronized HashMap Pros: thread-safe, εύκολο στον προγραμματισμό Cons: περιορίζει τον (όποιον) ταυτοχρονισμό, χαμηλή κλιμακωσιμότητα μόνο ένα thread μπορεί να επεξεργάζεται το HashMap κάθε φορά

9 Concurrent HashMap (Java 5) Fine-grain synchronized concurrent HashMap Pros: fine-grain παραλληλισμός, ταυτόχρονες αναγνώσεις Cons: περίπλοκο & επιρρεπές σε λάθη

10 Επίδοση: Locks

11 Transactional HashMap Απλά εσωκλείουμε τη λειτουργία σε ένα atomic block το σύστημα εξασφαλίζει την ατομικότητα Transactional HashMap Pros: thread-safe, εύκολο στον προγραμματισμό Καλή επίδοση & κλιμακωσιμότητα? Εξαρτάται από την υλοποίηση και το σενάριο εκτέλεσης, αλλά τυπικά ναι

12 Επίδοση: Locks vs Transactions

13 Composability: Locks Η σύνθεση lock-based κώδικα είναι δύσκολη Σκοπός: απόκρυψη ενδιάμεσης κατάστασης κατά τη μεταφορά Χρειαζόμαστε καθολική πολιτική για το κλείδωμα δεν μπορεί πάντα να αποφασιστεί a priori Fine-grain locking: μπορεί να οδηγήσει σε deadlocks

14 Composability: Locks Η σύνθεση lock-based κώδικα είναι δύσκολη Σκοπός: απόκρυψη ενδιάμεσης κατάστασης κατά τη μεταφορά Χρειαζόμαστε καθολική πολιτική για το κλείδωμα δεν μπορεί πάντα να αποφασιστεί a priori Fine-grain locking: μπορεί να οδηγήσει σε deadlocks Coarse-grain locking: μηδενικός ταυτοχρονισμός

15 Composability: Transactions Οι ατομικές λειτουργίες συντίθενται ομαλά, χωρίς να περιορίζεται ο ταυτοχρονισμός ο προγραμματιστής δηλώνει την καθολική πρόθεση (ατομική μεταφορά) χωρίς να χρειάζεται να ξέρει κάποια καθολική πολιτική κλειδώματος Το σύστημα διαχειρίζεται τον ταυτοχρονισμό με τον καλύτερο δυνατό τρόπο σειριοποίηση για transfer(a, B, $100) & transfer(b, A, $200) ταυτοχρονισμός για transfer(a, B, $100) & transfer(c, D, $200)

16 Υλοποίηση ΤΜ Τα ΤΜ συστήματα πρέπει να παρέχουν ατομικότητα και απομόνωση χωρίς να θυσιάζεται ο ταυτοχρονισμός Παράμετροι λειτουργίας Data versioning (ή version management) Conflict detection Conflict resolution Επιλογές Hardware transactional memory (HTM) Software transactional memory (STM) Hybrid transactional memory Hardware accelerated STMs Dual-mode systems

17 Data Versioning Διαχείριση unted (νέων) και ted (παλιών) εκδόσεων δεδομένων για ταυτόχρονα transactions Eager versioning (undo-log based) απευθείας ενημέρωση μνήμης διατήρηση undo πληροφορίας σε log (+) Γρήγορο (-) Αργό abort, ζητήματα fault tolerance Lazy versioning (write-buffer based) buffering νέων δεδομένων σε write-buffer μέχρι το πραγματική ενημέρωση μνήμης κατά το (+) Γρήγορο abort, fault tolerant (-) Αργά s

18 Eager versioning

19 Lazy versioning

20 Conflict detection Ανίχνευση και διαχείριση conflicts ανάμεσα σε transactions Read-Write και (συχνά) Write-Write conflicts Πρέπει να παρακολουθούνται το read-set & write-set ενός transaction Read-set: οι διευθύνσεις που διαβάζονται εντός του transaction Write-set: οι διευθύνσεις που γράφονται εντός του transaction Pessimistic (eager) detection Έλεγχος για conflicts σε κάθε load ή store SW: SW barriers με locks και/ή version numbers HW: έλεγχος μέσω του coherence protocol Χρήση contention manager για να αποφασίσει να κάνει stall ή abort διαφορετικές πολιτικές ανάθεσης προτεραιότητας στόχος: to make the common case fast

21 Pessimistic detection 21 Case 1 Case 2 Case 3 Case 4 X0 X1 X0 X1 X0 X1 X0 X1 TIME rd A check check wr C check wr B wr A check rd A check stall rd A restart check check rd A check wr A rd A wr A restart rd A wr A check check check rd A wr A restart restart rd A wr A check Success Early Detect Abort No progress

22 Conflict detection Optimistic (lazy) detection Τα conflicts ανιχνεύονται όταν ένα transaction επιχειρήσει να κάνει SW: validate τα write/read-set με χρήση locks ή version numbers HW: validate το write-set χρησιμοποιώντας το coherence protocol Σε περίπτωση conflict, προτεραιότητα στο ting transaction τα υπόλοιπα transactions μπορούν να κάνουν abort αργότερα σε περίπτωση conflict ανάμεσα σε ting transactions, την προτεραιότητα την αποφασίζει ο contention manager Σημείωση: optimistic & pessimistic σχήματα ταυτόχρονα είναι εφικτά Πολλά STMs είναι optimistic στα reads και pessimistic στα writes

23 Optimistic detection 23 Case 1 Case 2 Case 3 Case 4 X0 X1 X0 X1 X0 X1 X0 X1 TIME rd A wr B wr C check check wr A check rd A restart rd A rd A check wr A check rd A wr A restart rd A wr A rd A wr A check check check Success Abort Success Forward progress

24 Conflict Detection Tradeoffs Pessimistic CD (+) ανιχνεύει τα conflicts νωρίς αναιρεί λιγότερη δουλειά, μετατρέπει μερικά aborts σε stalls (-) δεν εγγυάται την πρόοδο προς τα εμπρός, πολλά aborts σε κάποιες περιπτώσεις (-) locking issues (SW), fine-grain communication (HW) Optimistic CD (+) εγγυάται την πρόοδο προς τα εμπρός (+) λιγότερα εν δυνάμει conflicts, λιγότερο locking (SW), bulk communication (HW) (-) ανιχνεύει τα conflicts αργά, προβλήματα δικαιοσύνης

25 TM Implementation Space (παραδείγματα) ΗΤΜ συστήματα Lazy + optimistic: Stanford TCC Lazy + pessimistic: MIT LTM, Intel VTM, Sun s Rock Eager + pessimistic: Wisconsin LogTM STM συστήματα Lazy + optimistic (rd/wr): Sun TL2 Lazy + optimistic (rd) / pessimistic (wr): MS OSTM Eager + optimistic (rd) / pessimistic (wr): Intel STM Eager + pessimistic (rd/wr): Intel STM

26 Sun Rock s HTM «Best-effort» HTM μικρές προσθήκες σε υλικό η εκτέλεση των transactions περιορίζεται από δομές του υλικού μη-εγγυημένη η πρόοδος προς τα εμπρός 2 εντολές chkpt failpc <critical section> Είτε η κρίσιμη περιοχή εκτελείται ατομικά, είτε κάνει abort και μεταβαίνει στο failpc Lazy VM Eager CD

27 Παράδειγμα atomic { a++; c = a + b; } retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 // Naïve repeated retry // Read a into register // Arithmetic // Write new value of a // Read new value of a // Read b // Arithmetic // Write c // Commit if appears atomic

28 Παράδειγμα retry: chkpt retry // Checkpoint registers r0 = a // Add a to read-set r0 = r0 + 1 // a = r0 // Add a to write-set // Buffer old/new values of a r1 = a // Read new value of a r2 = b // Add b to read-set r3 = r1 + r2 // c = r3 // Add c to write-set // Buffer old/new values of c // Commit if appears atomic Αναπαράσταση read/write sets? Buffer old/new values? Conflict detection? Cache bits & Writebuffer addresses Register chkpt & Writebuffer values Cache Coherence Protocol

29 Παράδειγμα chkpt registers writebuffer Αναπαράσταση read/write sets Read: R-bit in (L1) cache Write: writebuffer addresses r0 r1 r2 r0 10 r1 20 r Buffer old/new values Checkpoint old register values Old memory values in L1 cache New memory values in writebuffer Conflict detection Cache Coherence Protocol Μικρές προσθήκες σε υλικό! r3 read-set CACHE r3 40 a 42 c 12 - CORE 0

30 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 r1 r2 r3 read-set CACHE r0 10 r1 20 r2 30 r3 40 a 42 c ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

31 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set CACHE r0 10 r1 20 r2 30 r3 40 a 42 c ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

32 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE r0 42 r1 20 r2 30 r3 40 a 42 c ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

33 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE r0 43 r1 20 r2 30 r3 40 a 42 c ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

34 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE r0 43 r1 20 r2 30 r3 40 a 42 c 12 a old/new values of a ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

35 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE r0 43 r1 43 r2 30 r3 40 a 42 c 12 a ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection get2read(core0,b) data(b,26) CORE 0

36 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE R r0 43 r1 43 r2 26 r3 40 a 42 b 26 c 12 a ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

37 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE R r0 43 r1 43 r2 26 r3 69 a 42 b 26 c 12 a ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

38 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set R CACHE R r0 43 r1 43 r2 26 r3 69 a 42 b 26 c 12 c a ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

39 Παράδειγμα chkpt registers writebuffer retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 c = r3 r0 10 r1 20 r2 30 r3 40 read-set CACHE r0 43 r1 43 r2 26 r3 69 a 43 b 26 c ΜΩΒ: read/write sets KOKKINO: buffer old/new values ΠΡΑΣΙΝΟ: conflict detection CORE 0

40 Ανίχνευση διένεξης κατά την αίτηση συνάφειας του πρωτοκόλλου retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 chkpt r0 10 r1 20 r2 30 r3 40 read-set registers r0 43 r1 43 r2 26 r3 69 writebuffer - a get2write(other-core,a) c = r3 CACHE R R a 42 b 26 c 12 Conflict! Abort!! Η εξωτερική αίτηση για εγγραφή ελέγχει τον writebuffer & read-set bits Η εξωτερική αίτηση για ανάγνωση ελέγχει τον writebuffer CORE 0

41 Ανίχνευση διένεξης κατά την αίτηση συνάφειας του πρωτοκόλλου retry: chkpt retry r0 = a r0 = r0 + 1 a = r0 r1 = a r2 = b r3 = r1 + r2 chkpt r0 10 r1 20 r2 30 r3 40 read-set registers r0 10 r1 20 r2 30 r3 40 writebuffer c = r3 CACHE a 42 b 26 c 12 Abort done Resume at retry CORE 0

42 TM support στον Intel Haswell Νέες εντολές για «restricted transactional memory» (RTM) xbegin: takes pointer to fallback address in case of abort xend xabort πληροφορίες για το abort στον ΕΑΧ (data conflicts, cache line evictions, interrupts, faults, etc.)

43 credits for slides: C. Kozyrakis (Stanford) ACACES summer school 2008 D. Wood (Wisconsin) ACACES summer school 2009

44 Βιβλιογραφία

45 HTM Systems [Hammond04] L. Hammond, B. Carlstrom, V. Wong, M. Chen, C. Kozyrakis and K. Olukotun. Transactional Coherence and Consistency: Simplifying Parallel Hardware and Software. IEEE Micro, Special Issue on Top Picks from Architecture Conferences, vol. 24, no. 6, November/December [Herlihy93] M. Herlihy and E. Moss. Transactional memory: Architectural support for lockfree data structures. International Symposium on Computer Architecture (ISCA 93). [Moir08] M. Moir, K. Moore and D. Nussbaum. The Adaptive Transactional Memory Test Platform: A Tool for Experimenting with Transactional Code for Rock. 3rd ACM SIGPLAN Workshop on Transactional Computing (TRANSACT 08). [Yen07] L. Yen, J. Bobba, M. Marty, K. Moore, H. Volos, M. Hill, M. Swift and D. Wood. LogTM-SE: Decoupling Hardware Transactional Memory from Caches. 13th International Symposium on High Performance Computer Architecture (HPCA 07). [ASF] AMD Corporation. Advanced Synchronization Facility Proposed Architectural Specification. Mar Revision 2.1. [Dice08] D. Dice, M. Herlihy, D. Lea, Y. Lev, V. Luchangco, W. Mesard, M. Moir, K. Moore and D. Nussbaum. Applications of the Adaptive Transactional Memory Test Platform. 3rd ACM SIGPLAN Workshop on Transactional Computing (TRANSACT 08). [Dice09] D. Dice, Y. Lev, M. Moir and D. Nussbaum. Early experience with a commercial hardware transactional memory implementation. 14th international conference on Architectural support for programming languages and operating systems (ASPLOS 09).

46 STM systems [Dice06] D. Dice, O. Shalev and N. Shavit. Transactional locking II. 20th International Symposium on Distributed Computing (DISC 06). Stockholm, Sweeden, Sept [Herlihy06] M. Herlihy, V. Luchangco and M. Moir. A flexible framework for implementing software transactional memory. 21st Annual Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA 06). pp ACM Press, [Marathe06] V. Marathe, M. Spear, C. Heriot, A. Acharya, D. Eisenstat, W. Scherer III and M. Scott. Lowering the overhead of software transactional memory. First ACM SIGPLAN Workshop on Transactional Computing (TRANSACT 06). June [Ni08] Y. Ni, A. Welc, A. Adl-Tabatabai, M. Bach, S. Berkowits, J. Cownie, R. Geva, S. Kozhukow, R. Narayanaswamy, J. Olivier, S. Preis, B. Saha, A. Tal and X. Tian. Design and Implementation of Transactional Constructs for C/C++. 23rd Annual Conference on Object-Oriented Programming Systems Languages and Applications (OOPSLA 08). pp , ACM Press, [Riegel06] T. Riegel, P. Felber and C. Fetzer. A lazy snapshot algorithm with eager validation. LNCS, vol. 4167, pp Springer, Heidelberg (2006). [Saha06a] B. Saha, A. Adl-Tabatabai, R. Hudson, C. Minh and B. Hertzberg. McRT-STM: a high performance software transactional memory system for a multicore runtime. 11th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP 06). pp ACM Press, New York, [Baek07] W. Baek, C. Cao Minh, M. Trautmann, C. Kozyrakis and K. Olukotun. The OpenTM Transactional Application Programming Interface. 16th International Conference on Parallel Architecture and Compilation Techniques (PACT 07). pages , Washington, DC, USA, IEEE Computer Society.

47 Hybrid Systems [Damron06] P. Damron, A. Fedorova, Y. Lev, V. Luchangco, M. Moir and D. Nussbaum. Hybrid transactional memory. 12th International conference on Architectural Support for Programming Languages and Operating System (ASPLOS 06). [Diestelhorst08] S. Diestelhorst, M. Hohmuth. Hardware acceleration for lockfree data structures and software transactional memory. In the proceedings of the Workshop on Exploiting Parallelism with Transactional Memory and other Hardware Assisted Methods (EPHAM 08), April Boston, MA [Minh07] C. Minh, M. Trautmann, J. Chung, A. McDonald, N. Bronson, J. Casper, C. Kozyrakis and K. Olukotun. An Effective Hybrid Transactional Memory System with Strong Isolation Guarantees. 34th Annual International Symposium on Computer Architecture (ISCA 07). San Diego, California, 9-13 June [Saha06b] B. Saha, A.-R. Adl-Tabatabai and Q. Jacobson. Architectural Support for Software Transactional Memory. In MICRO 2006.

48 Applications [Kang09] S. Kang and David Bader. An Efficient Transactional Memory Algorithm for Computing Minimum Spanning Forest of Sparse Graphs. 14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP 09). [Nikas09] K. Nikas, N. Anastopoulos, G. Goumas and N. Koziris. Employing Transactional Memory and Helper Threads to Speedup Dijkstra's Algorithm. International Conference on Parallel Processing (ICPP 09). Vienna, Austria. [Scott07] M. Scott, M. Spear, L. Dalessandro and V. Marathe. Delaunay Triangulation with Transactions and Barriers. 10th International Symposium on Workload Characterization (IISWC 07). [Watson07] I. Watson, C. Kirkham and Mikel Lujan. A Study of a Transactional Parallel Routing Algorithm. 16th International Conference on Parallel Architecture and Compilation Techniques (PACT 07).

Τεχνικές Βελτιστοποίησης Κώδικα για Πολυεπεξεργαστικές Αρχιτεκτονικές. Υπευθυνος Διδάσκων: Νεκτάριος Κοζύρης. Transactional Memory

Τεχνικές Βελτιστοποίησης Κώδικα για Πολυεπεξεργαστικές Αρχιτεκτονικές. Υπευθυνος Διδάσκων: Νεκτάριος Κοζύρης. Transactional Memory Τεχνικές Βελτιστοποίησης Κώδικα για Πολυεπεξεργαστικές Αρχιτεκτονικές Υπευθυνος Διδάσκων: Νεκτάριος Κοζύρης Transactional Memory Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Transactional Memory

Transactional Memory Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Transactional Memory 9 ο Εξάμηνο Τακτικές Συγχρονισμού Κλειδώματα (locks) Coarse-grain

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

Transactional Memory

Transactional Memory Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Transactional Memory 9 ο Εξάμηνο Τακτικές Συγχρονισμού Κλειδώματα (locks) Coarse-grain

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

Υ- 07 Παράλληλα Συστήματα Transac9onal memory

Υ- 07 Παράλληλα Συστήματα Transac9onal memory Υ- 07 Παράλληλα Συστήματα Transac9onal memory Αρης Ευθυμίου Παρ. προγρ/μός με κλειδιά Χαμηλού επιπέδου πολύ κοντά στα μέσα και τις δομές του υλικού πολλές λεπτομέρειες, εύκολα γίνεται λάθος χαμηλή παραγωγικότητα

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

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Μελέτη και Αξιολόγηση Transactional Memory σε αλγορίθμους άμορφου παραλληλισμού

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

Transactional Memory

Transactional Memory Εθνικό Μετςόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιςτών Εργαςτήριο Υπολογιςτικών Συςτημάτων Transactional Memory 9 ο Εξάμθνο Τακτικζσ Συγχρονιςμοφ Κλειδϊματα (locks) Coarse-grain

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

QuakeTM: Parallelizing a Complex Sequential Application Using Transactional Memory (Gajinov et al., 2009)

QuakeTM: Parallelizing a Complex Sequential Application Using Transactional Memory (Gajinov et al., 2009) Quake I QuakeTM: Parallelizing a Complex Sequential Application Using Transactional Memory (Gajinov et al., 2009) Είναι όντως χρήσιμη η transactional memory σε μεγάλες εφαρμογές; Παράλληλη υλοποίηση μιας

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

Σύγχρονες Προκλήσεις

Σύγχρονες Προκλήσεις Σύγχρονες Προκλήσεις Εηζαγσγή Οη CMP είλαη πηα πξαγκαηηθόηεηα Intel Core 2, Quad, Nehalem IBM Power5, Power6 Sun Niagara, Niagara2, Rock Sony Cell Εθηέιεζε πνιιώλ threads Multithreaded environment Multiprogrammed

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

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Αλγόριθμοι διάσχισης γράφων σε σύγχρονες

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

Η πολυνηματική γλώσσα προγραμματισμού Cilk

Η πολυνηματική γλώσσα προγραμματισμού Cilk Η πολυνηματική γλώσσα προγραμματισμού Cilk Β Καρακάσης Ερευνητικά Θέματα Υλοποίησης Γλωσσών Προγραμματισμού Μεταπτυχιακό Μάθημα (688), ΣΗΜΜΥ Νοέμβριος 2009 Β Καρακάσης (CSLab, NTUA) ΣΗΜΜΥ, Μετ/κό 688 9/2009

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 7: Transactions (Συναλλαγές) Ο λόγος που αναπτύχθηκαν

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

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε:

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: Μια βάση δεδοµένων είναι σε συνεπή κατάσταση (consistent state) εάν όλοι οι περιορισµοί ακεραιότητας που έχουν δηλωθεί για αυτήν πληρούνται. Οι αλλαγές στην κατάσταση

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

Parallel Architectures

Parallel Architectures Parallel Architectures Memory Consistency + Synchronization Figures, examples από 1. Transactional Memory, D. Wood, Lecture Notes in ACACES 2009 2. Krste Asanović s s Lecture Notes, University of California,

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

Υποθετικός Πολυνηματισμός

Υποθετικός Πολυνηματισμός Υποθετικός Πολυνηματισμός Τα προβλήματα του παράλληλου προγραμματισμού Εντοπισμός παραλληλισμού χειροκίνητα (επισκόπηση) αυτόματα (compiler) Έκφραση παραλληλισμού low-level l l( (π.χ. Pthreads, MPI) high-level

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

Ενσωµατωµένα Υπολογιστικά Συστήµατα (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

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

ΕΙΣΑΓΩΓΗ ΣΤΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΗ ΣΤΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ 1 Περιγραφή των Δεδομένων: Τα μοντέλα ενός ΣΔΒΔ Ένα μοντέλο δεδομένων είναι μια συλλογή από έννοιες που χρησιμοποιούνται για την περιγραφή δεδομένων

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

Σύγχρονες Προκλήσεις

Σύγχρονες Προκλήσεις Σύγχρονες Προκλήσεις Εηζαγσγή Οη CMP είλαη πηα πξαγκαηηθόηεηα Intel Core 2, Quad, Nehalem IBM Power5, Power6 Sun Niagara, Niagara2, Rock Sony Cell Ύπαξμε πνιιώλ threads Τί ηα θάλνπκε; Multithreaded environment

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

Πολυνηματικές Αρχιτεκτονικές. «Μη-Παραδοσιακός» Παραλληλισμός

Πολυνηματικές Αρχιτεκτονικές. «Μη-Παραδοσιακός» Παραλληλισμός Πολυνηματικές Αρχιτεκτονικές & «Μη-Παραδοσιακός» Παραλληλισμός Πολυνηματικοί επεξεργαστές Στοχεύουν: throughput πολυπρογραμματιζόμενων φορτίων latency πολυνηματικών εφαρμογών Πρόκληση: latency μονο-νηματικών,

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

Λειτουργικά Συστήματα. Εισαγωγή

Λειτουργικά Συστήματα. Εισαγωγή Λειτουργικά Συστήματα Εισαγωγή Λειτουργικά Συστήματα Ι 4/10/2016 Περιληπτικά Στο σημερινό μάθημα θα δούμε ποια είναι η θέση του Λειτουργικού Συστήματος στην οργάνωση ενός ηλεκτρονικού υπολογιστή. Σπύρος

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

Υποθετικός Πολυνηματισμός

Υποθετικός Πολυνηματισμός Τεχνικές Βελτιστοποίησης Κώδικα για Πολυεπεξεργαστικές Αρχιτεκτονικές Υπευθυνος Διδάσκων: Νεκτάριος Κοζύρης Υποθετικός Πολυνηματισμός Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ ΤΜ. ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ 2018-2019 Επιβλέπουσα: Μπίμπη Ματίνα Ανάλυση της πλατφόρμας ανοιχτού κώδικα Home Assistant Το Home Assistant είναι μία πλατφόρμα ανοιχτού

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

2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems

2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems 2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems Multiple User Interfaces MobileSoft'16, Multi-User Experience (MUX) S1: Insourcing S2: Outsourcing S3: Responsive design

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

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

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

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

Δοσοληψίες. Κατανεμημένα Συστήματα

Δοσοληψίες. Κατανεμημένα Συστήματα Δοσοληψίες Κατανεμημένα Συστήματα 2018-2019 http://www.cslab.ece.ntua.gr/courses/distrib Στο προηγούμενο μάθημα Group communication Multicast για FIFO διάταξη Multicast για ολική διάταξη Sequencer ISIS

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

Δοσοληψίες. Κατανεμημένα Συστήματα

Δοσοληψίες. Κατανεμημένα Συστήματα Δοσοληψίες Κατανεμημένα Συστήματα 2016-2017 http://www.cslab.ece.ntua.gr/courses/distrib Στο προηγούμενο μάθημα Group communication Multicast για FIFO διάταξη Multicast για ολική διάταξη Sequencer ISIS

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

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό)

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό) Επανάκτηση δεδομένων (εμπλουτισμένο υλικό) http://delab.csd.auth.gr/courses/c_dbimpl/ Ευχαριστίες Μέρος του υλικού είναι βασισμένο στο βιβλίο Database Systems: The Complete Book 2 Επανάκτηση ηδεδομένων

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

Ερευνητική+Ομάδα+Τεχνολογιών+ Διαδικτύου+

Ερευνητική+Ομάδα+Τεχνολογιών+ Διαδικτύου+ Ερευνητική+Ομάδα+Τεχνολογιών+ Διαδικτύου+ Ερευνητικές,Δραστηριότητες,και, Ενδιαφέροντα,, Τμήμα,Μηχανικών,Η/Υ,&,Πληροφορικής, Τομέας,Λογικού,των,Υπολογιστών, Εργαστήριο,Γραφικών,,Πολυμέσων,και,Γεωγραφικών,

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

Προχωρημένα Θέματα Βάσεων Δεδομένων

Προχωρημένα Θέματα Βάσεων Δεδομένων Προχωρημένα Θέματα Βάσεων Δεδομένων 1ο Σετ Ασκήσεων ΕΡΩΤΗΜΑ 1 Ατομικότητα : Η ατομικότητα πρακτικά εξασφαλίζει ότι είτε όλες οι πράξεις μιας δοσοληψίας θα εκτελεστούν ή καμμιά από αυτές δεν θα εκτελεστεί.

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

H/Y Ε-07: Κατανεµηµένα Συστήµατα Εαρινό Εξάµηνο Ακ. Έτους 2008-2009 ιδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστικές Εργασίες

H/Y Ε-07: Κατανεµηµένα Συστήµατα Εαρινό Εξάµηνο Ακ. Έτους 2008-2009 ιδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστικές Εργασίες H/Y Ε-07: Κατανεµηµένα Συστήµατα Εαρινό Εξάµηνο Ακ. Έτους 2008-2009 ιδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστικές Εργασίες Ηµεροµηνία Παράδοσης: Σχόλια: Θα πρέπει να στείλετε µε e-mail την εργασία σας

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

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων 9 ο Εξάμηνο

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

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων

Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Παράλληλος προγραμματισμός: Σχεδίαση και υλοποίηση παράλληλων προγραμμάτων 9 ο Εξάμηνο

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

Parallel Architectures

Parallel Architectures Parallel Architectures Memory Consistency + Synchronization Figures, examples από 1. Transactional Memory, D. Wood, Lecture Notes in ACACES 2009 2. Krste Asanović s Lecture Notes, University of California,

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

Εικονική Μνήμη (Virtual Μemory)

Εικονική Μνήμη (Virtual Μemory) ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1

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

Μελέτη και Αξιολόγηση του Hardware Transactional Memory για Παραλληλοποίηση Skip Lists

Μελέτη και Αξιολόγηση του Hardware Transactional Memory για Παραλληλοποίηση Skip Lists ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Μελέτη και Αξιολόγηση του Hardware Transactional Memory για Παραλληλοποίηση

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

ΗΜΟΣΙΕΥΣΕΣ ΣΕ ΙΕΘΝΗ ΠΕΡΙΟ ΙΚΑ [1] C. Bouras, A. Gkamas, G. Kioumourtzis, Adaptive smooth multicast protocol for multimedia transmission:

ΗΜΟΣΙΕΥΣΕΣ ΣΕ ΙΕΘΝΗ ΠΕΡΙΟ ΙΚΑ [1] C. Bouras, A. Gkamas, G. Kioumourtzis, Adaptive smooth multicast protocol for multimedia transmission: ΗΜΟΣΙΕΥΣΕΣ ΣΕ ΙΕΘΝΗ ΠΕΡΙΟ ΙΚΑ [1] C. Bouras, A. Gkamas, G. Kioumourtzis, Adaptive smooth multicast protocol for multimedia transmission: Implementation details and performance evaluation, International

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

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 Πολυπύρηνοι επεξεργαστές, μέρος 2 Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Cache coherence & scalability! Τα πρωτόκολλα

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

Αποκατάσταση συστήματος Βάσεις Δεδομένων

Αποκατάσταση συστήματος Βάσεις Δεδομένων Αποκατάσταση συστήματος Βάσεις Δεδομένων με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Κατηγοριοποίηση αποτυχιών Αποτυχία συναλλαγής (Transaction failure):

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

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών Βάσεις Δεδομένων ΙΙ Διάλεξη 3 η Tεχνικές Aνάκαμψης Δ. Χριστοδουλάκης - Α. Φωκά Τμήμα Μηχανικών Η/Υ & Πληροφορικής - Εαρινό Εξάμηνο 2007 Επιθυμητές Ιδιότητες μιας Δοσοληψίας Ιδιότητες Δοσοληψιών Αtomicity

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

Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Βασικές έννοιες της δοσοληψίας Δοσοληψία είναι μία

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

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

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

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

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Δοσοληψίες (Transactions) Μέχρι στιγμής θεωρούσαμε πως υπάρχει μόνο ένας DB χρήστης που εκτελεί μία

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

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Το λειτουργικό σύστημα. Προγραμματισμός II 1 Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή η εφαρμογή είναι γνωστή εκ των προτέρων περιορισμένοι υπολογιστικοί

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

Parallel Architectures

Parallel Architectures Parallel Architectures Memory Consistency + Synchronization Figures, examples από 1. Transactional Memory, D. Wood, Lecture Notes in ACACES 2009 2. Krste Asanović s Lecture Notes, University of California,

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

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για

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

PRINCIPLES OF TRANSACTION-ORIENTED DATABASE RECOVERY. Theo Haerder Andreas Reuter. Μαρία Κουτσουλιέρη

PRINCIPLES OF TRANSACTION-ORIENTED DATABASE RECOVERY. Theo Haerder Andreas Reuter. Μαρία Κουτσουλιέρη PRINCIPLES OF TRANSACTION-ORIENTED DATABASE RECOVERY Theo Haerder Andreas Reuter Μαρία Κουτσουλιέρη Για να συλλάβουµε την ιδέα της ανάνηψης στις βάσεις δεδοµένων (database recovery) πρέπει να έχουµε υπ

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

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

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

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

Πολυνηματικές Αρχιτεκτονικές & «Μη-Παραδοσιακός» Παραλληλισμός

Πολυνηματικές Αρχιτεκτονικές & «Μη-Παραδοσιακός» Παραλληλισμός Πολυνηματικές Αρχιτεκτονικές & «Μη-Παραδοσιακός» Παραλληλισμός Πολυνηματικοί επεξεργαστές Στοχεύουν: throughput πολυπρογραμματιζόμενων φορτίων latency πολυνηματικών εφαρμογών Πολυνηματικοί επεξεργαστές

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

Εικονική Μνήμη (virtual memory)

Εικονική Μνήμη (virtual memory) Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται

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

FX10 SIMD SIMD. [3] Dekker [4] IEEE754. a.lo. (SpMV Sparse matrix and vector product) IEEE754 IEEE754 [5] Double-Double Knuth FMA FMA FX10 FMA SIMD

FX10 SIMD SIMD. [3] Dekker [4] IEEE754. a.lo. (SpMV Sparse matrix and vector product) IEEE754 IEEE754 [5] Double-Double Knuth FMA FMA FX10 FMA SIMD FX,a),b),c) Bailey Double-Double [] FMA FMA [6] FX FMA SIMD Single Instruction Multiple Data 5 4.5. [] Bailey SIMD SIMD 8bit FMA (SpMV Sparse matrix and vector product) FX. DD Bailey Double-Double a) em49@ns.kogakuin.ac.jp

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

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Το λειτουργικό σύστημα. Προγραμματισμός II 1 Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή η εφαρμογή είναι γνωστή εκ των προτέρων περιορισμένοι υπολογιστικοί

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Δοσοληψίες Concurrent Data Access (Ταυτόχρονη Πρόσβαση σε Δεδομένα) Συνήθως πολλοί χρήστες έχουν ταυτόχρονη

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

Εισαγωγή στην πληροφορική -4

Εισαγωγή στην πληροφορική -4 Εισαγωγή στην πληροφορική 6 (, 64) bits Μνήµη Θέση (κύτταρο cell) µνήµης, χωράει λέξεις (words) εντολές (πρόγραµµα), αριθµοί (δεδοµένα) Αριθµοί: δυαδική (binary) αναπαράσταση = = = 4 = 4 = 5 = 7 Εισαγωγή

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

Επαναφορά του Συστήματος (Μέρος Α')

Επαναφορά του Συστήματος (Μέρος Α') Επαναφορά του Συστήματος (Μέρος Α') Κεφάλαιο 18 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke Ελληνική Μετάφραση: Γεώργιος Ευαγγελίδης 1 Επανάληψη: Οι ιδιότητες ACID A tomicity (Ατομικότητα):

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

Ημερίδα διάχυσης αποτελεσμάτων έργου Ιωάννινα, 14/10/2015

Ημερίδα διάχυσης αποτελεσμάτων έργου Ιωάννινα, 14/10/2015 MIS έργου:346983 Τίτλος Έργου: Epirus on Androids: Έμπιστη, με Διαφύλαξη της Ιδιωτικότητας και Αποδοτική Διάχυση Πληροφορίας σε Κοινωνικά Δίκτυα με Γεωγραφικές Εφαρμογές Έργο συγχρηματοδοτούμενο από την

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

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Το λειτουργικό σύστημα. Προγραμματισμός II 1 Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή περιορισμένοι υπολογιστικοί / αποθηκευτικοί πόροι δεν τίθεται θέμα

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

Συνοχή κρυφής μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα

Συνοχή κρυφής μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα Συνοχή κρυφής μνήμης σε πολυπύρηνα/πολυεπεξεργαστικά συστήματα ΙΙΙ 1 lalis@inf.uth.gr Απλοποιημένο μοντέλο συστήματος CPU/cores πάνω σε δίαυλο/δίκτυο (bus/interconnect) για απλότητα, εδώ CPU = core Η κυρίως

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

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε Επιθυµητές Ιδιότητες µιας οσοληψίας Τεχνικές Ανάκαµψης Ιδιότητες οσοληψιών Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε καµία Consistency (συνέπεια) - διατήρηση συνέπειας της Β Isolation (αποµόνωση)

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

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Τζικούλης Βασίλειος Credits:Γιάννης Μακρυδάκης Συναλλαγές Η ταυτόχρονες συναλλαγές (δοσοληψίες, transactions) µε µια

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

Cilk: Φιλοσοφία και Χρήση

Cilk: Φιλοσοφία και Χρήση 1 Cilk: Φιλοσοφία και Χρήση Παράλληλα Συστήματα Επεξεργασίας 9ο εξάμηνο ΣΗΜΜΥ ακ. έτος 2012-2013 http://www.cslab.ece.ntua.gr/courses/pps Εργαστήριο Υπολογιστικών Συστημάτων ΕΜΠ Δεκέμβριος 2012 Cilk 2

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

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

Προχωρηµένα Θέµατα Αρχιτεκτονικής Προχωρηµένα Θέµατα Αρχιτεκτονικής Μάθηµα 2 ο : Instruction Set Principles and Examples Μάθηµα 2 ο Προχωρηµένα Θέµατα Αρχιτεκτονικής 1 Σχεδιασµός Συνόλου Εντολών Θέµατα που θα συζητηθούν ιαφορετικές επιλογές

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI Β. Μεγαλοοικονόμου Επεξεργασία Δοσοληψιών (Transaction Processing) (παρουσίαση βασισμένη εν μέρη σε σημειώσεις των Silberchatz, Korth και Sudarshan και του

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

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Πλεονεκτήματα MPSoC Είναι ευκολότερο να σχεδιαστούν πολλαπλοί πυρήνες επεξεργαστών από τον σχεδιασμό ενός ισχυρότερου και πολύ πιο σύνθετου μονού επεξεργαστή.

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

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε Επιθυµητές Ιδιότητες µιας οσοληψίας Τεχνικές Ανάκαµψης Ιδιότητες οσοληψιών Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε καµία Consistency (συνέπεια) - διατήρηση συνέπειας της Β Isolation (αποµόνωση)

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

Προηγμένοι Μικροεπεξεργαστές. Paging & Segmentation

Προηγμένοι Μικροεπεξεργαστές. Paging & Segmentation Προηγμένοι Μικροεπεξεργαστές Paging & Segmentation Segmentation Τεχνική για σπάσουμε την μνήμη σε λογικά κομμάτια Κάθε κομμάτι αποθηκεύει πληροφορία σχετική με data segments for each process code segments

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

Έλεγχος Ταυτοχρονισμού

Έλεγχος Ταυτοχρονισμού Έλεγχος Ταυτοχρονισμού Κεφάλαιο 17 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke Ελληνική Μετάφραση: Γεώργιος Ευαγγελίδης 1 Συγκρουσιακώς Σειριοποιήσιμα Χρονοπρογράμματα Δυο χρονοπρογράμματα

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

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

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

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

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU

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

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Ταυτόχρονη εκτέλεση Ο προγραμματιστής δεν ελέγχει (άμεσα) την εκτέλεση/εναλλαγή των νημάτων Δεν γνωρίζει πότε θα αρχίσει

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

Πολυπύρηνοι επεξεργαστές Multicore processors

Πολυπύρηνοι επεξεργαστές Multicore processors Πολυπύρηνοι επεξεργαστές Multicore processors 1 Μετάβαση στους πολυπύρηνους(1) Απόδοση των µονοεπεξεργαστών 25% ετήσια βελτίωση της απόδοσης από το 1978 έως το 1986 Κυρίως από την εξέλιξη της τεχνολογίας

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Πρόγραμμα και εκτέλεση προγράμματος Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

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

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα: Intel Parallel Studio XE 2013 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων

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

Περιβάλλον Παράλληλου Προγραμματισμού

Περιβάλλον Παράλληλου Προγραμματισμού Περιβάλλον Παράλληλου Προγραμματισμού Ελεύθερο Λογισμικό /Λογισμικό Ανοιχτού Κώδικα για την υλοποίηση ενός ολοκλήρωμενου εκπαιδευτικού περιβάλλοντος ανάπτυξης κώδικα Εμπειρίες και προβλήματα Κ. Τ. Δελησταύρου

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

Μνήμη Διευθύνσεις Δείκτες. Προγραμματισμός II 1

Μνήμη Διευθύνσεις Δείκτες. Προγραμματισμός II 1 Μνήμη Διευθύνσεις Δείκτες Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη Η/Υ Ειδικό υλικό, ξεχωριστό από τον επεξεργαστή Χρησιμεύει για την αποθήκευση δεδομένων και της κατάστασης εκτέλεσης του προγράμματος

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

Προηγµένες Τεχνικές Προγραµµατισµού

Προηγµένες Τεχνικές Προγραµµατισµού 1 Tίτλος του µαθήµατος Κωδικός αριθµός µαθήµατος Τύπος του µαθήµατος Επίπεδο του µαθήµατος Έτος σπουδών Εξάµηνο Πιστωτικές µονάδες ECTS 5 Προηγµένες Τεχνικές Προγραµµατισµού 22Γ702 Μάθηµα επιλογής Προπτυχιακό

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

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

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

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

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

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

ΠΡΟΣΟΜΟΙΩΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ. Διαφάνειες από το MicroArch 35 Tutorial του Simics

ΠΡΟΣΟΜΟΙΩΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ. Διαφάνειες από το MicroArch 35 Tutorial του Simics ΠΡΟΣΟΜΟΙΩΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Διαφάνειες από το MicroArch 35 Tutorial του Simics http://www.cs.pitt.edu/~cho/cs2410/currentsemester/handouts/simics cho/cs2410/currentsemester/handouts/simics_tutorial.pdftutorial.pdf

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

Re-Pair n. Re-Pair. Re-Pair. Re-Pair. Re-Pair. (Re-Merge) Re-Merge. Sekine [4, 5, 8] (highly repetitive text) [2] Re-Pair. Blocked-Repair-VF [7]

Re-Pair n. Re-Pair. Re-Pair. Re-Pair. Re-Pair. (Re-Merge) Re-Merge. Sekine [4, 5, 8] (highly repetitive text) [2] Re-Pair. Blocked-Repair-VF [7] Re-Pair 1 1 Re-Pair Re-Pair Re-Pair Re-Pair 1. Larsson Moffat [1] Re-Pair Re-Pair (Re-Pair) ( ) (highly repetitive text) [2] Re-Pair [7] Re-Pair Re-Pair n O(n) O(n) 1 Hokkaido University, Graduate School

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

Στοιχεία εισηγητή Ημερομηνία: 10/10/2017

Στοιχεία εισηγητή Ημερομηνία: 10/10/2017 Θέμα μεταπτυχιακής διατριβής: Λογισμικά μελέτης και σχεδίασης ρομποτικών συστημάτων - συγκρτική μελέτη και εφαρμογές. 1) Μελέτη των δημοφιλών λογισμικών σχεδίασης ρομποτικών συστημάτων VREP και ROS. 2)

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

Επιτεύγµατα των Λ.Σ.

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

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

Πλειάδες φαντάσματα (phantoms)

Πλειάδες φαντάσματα (phantoms) Πλειάδες φαντάσματα (phantoms) Τα phantoms είναι πλειάδες που θα έπρεπε να έχουν φραγή αλλά δεν έχουν, γιατί δεν υπήρχαν όταν αποκτήθηκε το lock Παράδειγμα: σχέση R (E#, name, ) constraint: E# is key χρήση

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

DEIM Forum 2 D3-6 819 39 744 66 8 E-mail: kawamoto@inf.kyushu-u.ac.jp, tawara@db.soc.i.kyoto-u.ac.jp, {asano,yoshikawa}@i.kyoto-u.ac.jp 1.,, Amazon.com The Internet Movie Database (IMDb) 1 Social spammers

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

Αρχιτεκτονική Υπολογιστών. ηµήτρης Γκιζόπουλος Καθηγητής

Αρχιτεκτονική Υπολογιστών. ηµήτρης Γκιζόπουλος Καθηγητής Αρχιτεκτονική Υπολογιστών ΙI ηµήτρης Γκιζόπουλος Καθηγητής Γενικά ηµήτρης Γκιζόπουλος, Καθηγητής http://www.di.uoa.gr/~dgizop γραφείο Α32 ιδασκαλία στο αµφιθέατρο Α2 ευτέρα 11 00 13 00 Πέµπτη 13 00 15

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

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

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

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

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

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

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

Παράλληλος προγραμματισμός: Σχεδίαση παράλληλων προγραμμάτων

Παράλληλος προγραμματισμός: Σχεδίαση παράλληλων προγραμμάτων Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Παράλληλος προγραμματισμός: Σχεδίαση παράλληλων προγραμμάτων 9 ο Εξάμηνο Σχεδιασμός παράλληλων

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

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU

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

Προχωρηµένα Θέµατα Αρχιτεκτονικής Η/Υ. Storage Systems.. Λιούπης

Προχωρηµένα Θέµατα Αρχιτεκτονικής Η/Υ. Storage Systems.. Λιούπης Προχωρηµένα Θέµατα Αρχιτεκτονικής Η/Υ Storage Systems. Λιούπης Απόδοση συστηµάτων Ι/Ο Απόδοση Ι/Ο: πόσο σηµαντική είναι; Αύξηση απόδοσης ανά έτος: CPU: περίπου 55% I/O:

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Ο κώδικας δεν εκτελείται «μόνος του» Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

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

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης.

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

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

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

ΠΡΟΣΟΜΟΙΩΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΠΡΟΣΟΜΟΙΩΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ 1 Computer Architecture Processor Design Single thread pipeline, branch prediction Multiple threads SMT resource allocation, threads scheduling Ετερογενείς αρχιτεκτονικές General

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

Microsoft Visual Studio 2005. Γιώργος Καµαρινός Developer Programs Marketing Manager Microsoft Hellas

Microsoft Visual Studio 2005. Γιώργος Καµαρινός Developer Programs Marketing Manager Microsoft Hellas Microsoft Visual Studio 2005 καισυνδροµέςmsdn Γιώργος Καµαρινός Developer Programs Marketing Manager Microsoft Hellas PΗrΣogress ηµερινή Rep ort Παρ ουσίαση Τι είναι το.net De? veloper Roadma Τα p νέα

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

Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης

Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης Αρης Ευθυμίου Λειτουργία μνήμης Η μνήμη είναι ένας πίνακας αποθήκευσης Οταν διαβάζουμε μια θέση, περιμένουμε να πάρουμε την τελευταία τιμή που έχει

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

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Υποθέσεις εργασίας Νήματα/διεργασίες με κοινή μνήμη Αυτόματη διακοπή/εναλλαγή νημάτων/διεργασιών (π.χ. πάνω από 1 CPU

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

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

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

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

Ανάλυση σχημάτων βασισμένη σε μεθόδους αναζήτησης ομοιότητας υποακολουθιών (C589)

Ανάλυση σχημάτων βασισμένη σε μεθόδους αναζήτησης ομοιότητας υποακολουθιών (C589) Ανάλυση σχημάτων βασισμένη σε μεθόδους αναζήτησης ομοιότητας υποακολουθιών (C589) Μεγαλοοικονόμου Βασίλειος Τμήμα Μηχ. Η/ΥκαιΠληροφορικής Επιστημονικός Υπεύθυνος Στόχος Προτεινόμενου Έργου Ανάπτυξη μεθόδων

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

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα: Intel Parallel Studio XE 2013 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων

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

Transactions Management. (Διαχείριση Δοσοληψιών)

Transactions Management. (Διαχείριση Δοσοληψιών) Transactions Management (Διαχείριση Δοσοληψιών) Επισκόπηση διαλέξεων Αντιμετώπιση αστοχιών συστήματος (failure recovery) Χρήση ιστορικού/πρακτικού - Logging (Undo, Redo, Undo/Redo) Χρονοπρογράμματα Δοσοληψιών

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

Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου

Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου Μ.Στεφανιδάκης Κατανεμημένα συστήματα ελέγχου Α Β διασυνδετικό δίκτυο Γ Δ Ε π.χ. οι επιμέρους

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