Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing)

Σχετικά έγγραφα
Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D.

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing)

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D.

Κινητός και Διάχυτος Υπολογισμός (Mobile & Pervasive Computing)

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing)

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D.

Κινητός και Διάχυτος Υπολογισμός (Mobile & Pervasive Computing)

Κεφ.11: Ευρετήρια και Κατακερματισμός

Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη

Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης

Λειτουργικά Συστήματα Η/Υ

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing) Περιεχόµενα. Αρχιτεκτονική κινητού δικτύου. ηµήτριος Κατσαρός, Ph.D.

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

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

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

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Επίπεδα Αφαίρεσης Σ Β. Αποθήκευση Εγγραφών - Ευρετήρια. ρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, Επίπεδο Όψεων.

ΕΠΛ 476: ΚΙΝΗΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ (MOBILE NETWORKS)

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

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

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

Σύστηµα Αρχείων και Καταλόγων

Διάλεξη 15 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης

ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή

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

Εικονική Μνήµη. Κεφάλαιο 8. Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

Πληροφορική 2. Δομές δεδομένων και αρχείων

ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης

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

Φροντιστήριο 4. Άσκηση 1. Λύση. Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών Εαρινό Εξάµηνο

Επεξεργασία Ερωτήσεων

Κεφάλαιο 5: Τοπικά ίκτυα

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1

Σύνθεση Data Path. ιασύνδεσης. Μονάδες. Αριθµό Μονάδων. Τύπο Μονάδων. Unit Selection Unit Binding. λειτουργιών σε. Μονάδες. Αντιστοίχιση µεταβλητών &

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing)

Ν. Μ. Μισυρλής. Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών. Καθηγητής: Ν. Μ. Μισυρλής 29 Μαΐου / 18

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D.

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Πρωτόκολλα Ελέγχου προσπέλασης μέσου

3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση χώρου διευθύνσεων

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Ασκήσεις Caches

Εύρεση & ιαχείριση Πληροφορίας στον Παγκόσµιο Ιστό

Εύρεση & ιαχείριση Πληροφορίας στον Παγκόσµιο Ιστό. Ζητήµατα Μεγάλης-Κλίµακας Υλοποίησης του PageRank. Αρχιτεκτονική Μηχανής Αναζήτησης

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language)

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Πίνακες.

Ασκήσεις Caches

Άσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ,

ΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα

Το εσωτερικό ενός Σ Β

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δροµολόγηση (Routing)

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

Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης

Ενότητα 2: Η κρυφή µνήµη και η λειτουργία της

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

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

ΕΠΛ 605: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018 ΕΡΓΑΣΙΑ 3 (13/10/2018) Ηµεροµηνία Παράδοσης δεύτερου µέρους: 18/10/2018

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Δοµές Δεδοµένων. 18η Διάλεξη Ισορροπηµένα δέντρα. Ε. Μαρκάκης

Ενότητα 4. Πρωτόκολλα ροµολόγησης: Αρχές Λειτουργίας του OSPF (Open Shortest Path First)

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. Συλλογές και Επαναλήπτες. Συλλογές - Collections

ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη 16 Νοεμβρίου 2013

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

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, Δίαβλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 14-1

ΑΣΚΗΣΗ 1 Δίνονται: Ερώτημα 1: (1.α) (1.β) (1.γ) (1.δ) Ερώτημα 2: (2.α) (2.β) (2.γ)

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Κάνοντας ακριβέστερες μετρήσεις με την βοήθεια των Μαθηματικών. Ν. Παναγιωτίδης, Υπεύθυνος ΕΚΦΕ Ν. Ιωαννίνων

Εισαγωγή στην. Εισαγωγή Σ Β. Αρχεία ευρετηρίου Κατάλογος. συστήματος. Αρχεία δεδομένων

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις στα Τοπικά Δίκτυα

Query-Driven Indexing for Scalable Peer-to-Peer Text Retrieval. Gleb Skobeltsyn, Toan Luu, Ivana Podnar Zarko, Martin Rajman, Karl Aberer

Αλγόριθμοι Ταξινόμησης Μέρος 4

Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών. Ένα στοιχείο γράφεται ως, όπου κάθε.

Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing)

ΗΥ360 Αρχεία και Βάσεις εδοµένων

Λύση: Λύση: Λύση: Λύση:

Κεφάλαιο 14. Δομές Ευρετηρίων για Αρχεία. Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Ελληνική Έκδοση,

ÁÎÉÁ ÅÊÐÁÉÄÅÕÔÉÊÏÓ ÏÌÉËÏÓ

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις

Διάλεξη 14: Δέντρα IV B Δένδρα. Διδάσκων: Παναγιώτης Ανδρέου

Υπόστρωμα Ελέγχου Πρόσβασης Μέσου. Medium Access Control Sub-layer.

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

Επιµέλεια Θοδωρής Πιερράτος

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ιαµέριση - Partitioning

Transcript:

1 Κινητός και ιάχυτος Υπολογισµός (Mobile & Pervasive Computing) ηµήτριος Κατσαρός, Ph.D. Χειµώνας 2005 ιάλεξη 4η

2 Ιστοσελίδα του µαθήµατος http://skyblue.csd.auth.gr/~dimitris/courses/mpc_fall05.htm Θα τοποθετούνται οι διαφάνειες του επόµενου µαθήµατος Σταδιακά θα τοποθετηθούν και τα research papers που αντιστοιχούν σε κάθε διάλεξη

3 Περιεχόµενα Αρχιτεκτονική κινητού δικτύου Εκποµπή σε πολλαπλά κανάλια Caching Prefetching Ευρετήρια

4 Αρχιτεκτονική κινητού δικτύου PDA MOBILE HOST WIRELESS LAN CELL 2Kbps - 15Mbps WIRELESS RADIO CELL 9Kbps - 14Kbps BASE STATION BASE STATION FIXED HOST BASE STATION FIXED NETWORK Mbps to Gbps PDA BASE STATION

5 Αρχιτ. Personal Comm. Sys. (PCS)

6 Γενικό µοντέλο εκποµπής Κινητοί πελάτες #πελατών >> #servers Εύρος ζώνης ανοδικού << εύρος ζώνης καθοδικού Σταθµός Βάσης εύρος ζώνης καθοδικού καναλιού Πληροφοριακό Σύστηµα (server) Ασύρµατο κελί

7 Περιεχόµενα Αρχιτεκτονική κινητού δικτύου Εκποµπή σε πολλαπλά κανάλια Caching Prefetching Ευρετήρια

8 Πολλαπλά κανάλια εκποµπής Για λόγους όπως: Application scalability Μια εφαρµογή αποκτά επιπλέον κανάλια για να εξυπηρετήσει µεγαλύτερο πληθυσµό Fault tolerance Τρεις servers εκπέµπουν σε µια γεωγραφική περιοχή σε µη συνεχόµενες συχνότητες, αλλά οι δυο παθαίνουν βλάβη και τα κανάλια τους ανατίθονται στον τρίτο Reconfiguration of adjoining cells Γειτονικά κελιά εξυπηρετούνται από διαφορετικούς servers, αλλά τα κελιά συνενώνονται και τα κανάλια ανατίθονται στον έναν από τους δυο Heterogeneous clients Πελάτες µε ετερογενείς δυνατότητες Είναι δυνατόν να υπάρχουν πολλαπλά κανάλια εκποµπής

9 Εκποµπή σε Πολλαπλά Κανάλια Κινητοί πελάτες #πελατών >> #servers εύρος ζώνης καθοδικού καναλιού Σταθµός Βάσης εύρος ζώνης καθοδικού καναλιού εύρος ζώνης καθοδικού καναλιού Πληροφοριακό Σύστηµα (server) Ασύρµατο κελί

10 Ιεραρχικά προγράµµατα εκποµπής

11 Μέση καθυστέρηση σε ένα κανάλι Μέση καθυστέρηση για κάθε αντικείµενο στο κανάλι i είναι:

12 ηµιουργία ιεραρχικών προγραµµ. Πρόβληµα ηµιουργίας Ιεραρχικού Προγράµµατος Εκποµπής

13 ενδρική αναπαράσταση

14 Κόστος επιπέδου του δένδρου

15 Αλγόριθµος VF K

16 Αλγόριθµος VF K

17 Αλγόριθµος VF K

18 Αλγόριθµος VF K

19 Αλγόριθµος VF K

20 Αλγόριθµος VF K

21 Παράδειγµα του VF K

22 Παράδειγµα του VF K

23 Παράδειγµα του VF K

24 Παράδειγµα του VF K

25 Το πρόβληµα Windows Scheduling Έστωσαν h slotted κανάλια και n αντικείµενα (σελίδες), που στην κάθε µια αντιστοιχεί ένα παράθυρο (window) w i >=1, όπου w i είναι ακέραιος. Είναι δυνατό να εκπέµψουµε τις n σελίδες στα h κανάλια, µια σελίδα σε κάθε κανάλι σε κάθε slot (χρονική στιγµή), ώστε το κενό µεταξύ δυο συνεχόµενων εµφανίσεων της σελίδας i να είναι όχι µεγαλύτερο από w i? Εάν για δεδοµένο h και W(w 1,w 2,...,w n ), η απάντηση στο παραπάνω ερώτηµα είναι καταφατική, το πρόγραµµα εκποµπής που λύνει το πρόβληµα αποκαλείται h,w -πρόγραµµα Το πρόβληµα βελτιστοποίησης είναι να βρούµε το ελάχιστο h που θα το σηµειώνουµε ως H(W), ώστε να υπάρχει το h,w - πρόγραµµα Το πρόβληµα αυτό αποκαλείται optimal windows scheduling πρόβληµα

26 Το πρόβληµα Windows Scheduling Το πρόβληµα αυτό ανήκει στην κλάση των NP-Hard ακόµα και στην περίπτωση που h=1. Παράδειγµα: W= 2,4,5 1,W = [2 4 2 5 2 4 2 5] Σηµειώστε ότι η πρώτη σελίδα εµφανίζεται κάθε 2 slots, η δεύτερη κάθε 4 slots και η Τρίτη κάθε 4(<5) slots

27 Περιεχόµενα Αρχιτεκτονική κινητού δικτύου Εκποµπή σε πολλαπλά κανάλια Caching Prefetching Ευρετήρια

28 Caching στους κινητούς πελάτες Προγράµµατα εκποµπής Βασίζονται στη µέση πιθανότητα προσπέλασης: µέσος όρος πάνω σε ΌΛΟΥΣ τους πελάτες Όχι αναγκαστικά βέλτιστη για κάθε έναν πελάτη Πώς µπορεί κάθε πελάτης να υποβοηθήσει τον εαυτό του? Caching: προσωρινή αποθήκευση των δεδοµένων που λαµβάνει Πολιτική caching: όταν εξαναγκάζεται να αντικαταστήσει κάποιο (επειδή η cache είναι πλήρης), αντικαθιστά εκείνα που είναι λιγότερο πιθανό να χρησιµεύσουν στο µέλλον

29 Το γενικό µοντέλο caching

30 Caching στους κινητούς πελάτες Ποια πολιτική αντικατάστασης (replacement strategy ή policy ή algorithm) θα πρέπει να χρησιµοποιούν οι πελάτες;

31 Least Recently Used (LRU) LRU: Αντικατάσταση του αντικειµένου που έχει χρησιµοποιηθεί παλιότερα στο παρελθόν

32 Most Probable Accessed (MPA) MPA: Αντικατάσταση του αντικειµένου που θα χρησιµοποιηθεί λιγότερο συχνά στο µέλλον

33 Probability Inv. Broadc. Frequency PIX: Αντικατάσταση του αντικειµένου µε το µικρότερο P/X, όπου P: είναι η πιθανότητα προσπέλασης του αντικειµένου X: είναι η συχνότητα εκποµπής του αντικειµένου

34 Η πολιτική LIX (1/3) Η πολιτική PIX δεν είναι πρακτική Απαιτεί τέλεια γνώση των πιθανοτήτων προσπέλασης Απαιτεί σύγκριση των τιµών PIX όλων των αντικειµένων στην cache (σειριακή σάρωση των αντικειµένων) Ιδέα: προσέγγιση της πολιτικής PIX µε έναν αλγόριθµο του τύπου LRU (δηλ., τον LIX) που λαµβάνει υπόψη του πιθανότητες προσπέλασης LRU (Least Recently Updated) Τα Cached δεδοµένα διατηρούνται σε µια λίστα Εάν ένα δεδοµένο προσπελαστεί µετακινείται στην κορυφή/αρχή της λίστας Όταν συµβεί cache miss (απαιτείται να κατεβεί από το κανάλι και να µπει στην cache), το δεδοµένο στο τέλος της λίστας εκδιώκεται από τη λίστα

35 Η πολιτική LIX (2/3) Χρήση τροποποιηµένου LRU για κάθε δίσκο εκποµπής χωριστά Ο LIX διατηρεί µια λίστα µε αντικείµενα για κάθε δίσκο εκποµπής µε συχνότητα f j Τα αντικείµενα µπαίνουν στη λίστα του αντίστοιχου δίσκου εκποµπής όπου ανήκουν Όταν ένα αντικείµενο προσπελάζεται, τοποθετείται στην κορυφή/αρχή της λίστας Μια εκτίµηση της πιθανότητας προσπέλασης p i αναπροσαρµόζεται οποτεδήποτε το αντικείµενο d i προσπελάζεται Όταν ένα αντικείµενο di πρόκειται να εκδιωχτεί, υπολογίζεται µια LIX τιµή lix i (που πρσεγγίζει την PIX τιµή) για κάθε αντικείµενο στο τέλος κάθε λίστας Το αντικείµενο µε τη χαµηλότερη τιµή, τελικά εκδιώκεταιthe data item with lowest value lixi is evicted

36 Η πολιτική LIX (3/3)

37 Παράδειγµα LIX υο δίσκοι εκποµπής D 1 ={A}, D 2 ={B,C,D}, συχνότητες f 1 = 3, f 2 = 1, c=½ Η cache µπορεί να αποθηκεύσει 2 αντικείµενα.

38 Περιεχόµενα Αρχιτεκτονική κινητού δικτύου Εκποµπή σε πολλαπλά κανάλια Caching Prefetching Ευρετήρια

39 Κίνητρο για prefetching Οι PIX/LIX αποθηκεύουν στην cache αντικείµενα, µόνο µετά αφού ζητηθούν Εναλλακτικά, ο κινητός πελάτης µπορεί να κατεβάζει αντικείµενα από το κανάλι, αφού ούτως γη άλλως το ακούει Ο στόχος είναι να ελαττώσει το χρόνο απόκρισης Μέθοδοι prefetcing: Tag Team Caching Ευρεστικό Prefetching

40 Η έννοια του tag team caching Tag Team Caching Τα αντικείµενα συνεχώς αντικαθιστούν το ένα το άλλο µέσα στην cache Για παράδειγµα, έστωσαν δυο αντικείµενα x και y τα οποία εκπέµπονται από το κανάλι Ο πελάτης caches το x όταν εκπέµπεται στο κανάλι Εκδιώχνει το x και caches το y, όταν εκπέµπεται το y

Παράδειγµα tag team caching (1/2) 41

42 Αναµεν. Καθυστέρ. Demand Driven Υποθέτουµε ότι ένας πελάτης ενδιαφέρεται να προσπελάσει το x και το y p x = p y = 0.5 και ότι έχει µια cache µε µια µόνο θέση Στο µοντέλο demand driven, κάνει cache το x και εάν χρειάζεται το y, περιµένει για το y και αντικαθιστά το x στην cache µε το y Η αναµενόµενη καθυστέρηση σε cache miss είναι ½ της περιστροφής του δίσκου Η αναµενόµενη καθυστέρηση πάνω σε όλες τις προσπελάσεις είναι C i *M i *D i, όπου C είναι η πιθανότητα προσπέλασης, M είναι η πιθανότητα ενός cache miss και D είναι η αναµενόµενη καθυστέρηση εκποµπής για το αντικείµενο i Για τα αντικείµενα x και y, είναι ίση µε: 0.5 *0.5*0.5 +0.5*0.5*0.5 = 0.25

Αναµεν. Καθυστέρ. Tag team caching 43 0.5*0.5*0.25 + 0.5*0.5*0.25 = 0.125, δηλαδή, το µέσο κόστος είναι το ½ του αντίστοιχου κόστους στο σχήµα demand driven Γιατί? Ένα miss µπορεί να συµβεί σε οποιαδήποτε στιγµήστοµοντέλο demand driven, ενώ τα misses συµβαίνουν µόνο κατά τη διάρκεια του µισού broadcast στο tag team caching

44 Ευρεστικό Prefetching Απλό Eυρεστικό Prefetching Εκτελεί έναν υπολογισµό για κάθε αντικείµενο που εκπέµπεται στο κανάλι µε βάση την πιθανότητα προσπέλασης P για το αντικείµενο και το ποσό του χρόνου T που θα περάσει µέχρι να εµφανιστεί ξανά η σελίδα στο κανάλι εκποµπής Εάν η P*T τιµή των σελίδων που εκπέµπονται είναι υψηλότερες από αυτές των σελίδων στην cache, τότε εκείνες µε τη χαµηλότερη τιµή P*T, εκδιώκεται από την cache Τµήµα ΜηχανικώνΗ/Υ, Τηλεπικοινωνιών και ικτύων, Πανεπιστήµιο Θεσσαλίας

45 Ευρεστικό Prefetching

46 Ευρεστικό Prefetching

47 Περιεχόµενα Αρχιτεκτονική κινητού δικτύου Εκποµπή σε πολλαπλά κανάλια Caching Prefetching Ευρετήρια

48 Παράµετροι ενδιαφέροντος (1/2) Tuning time: Ο χρόνος που ο κινητός πελάτης δαπανά ακούγοντας το κανάλι. Προσδιορίζει την κατανάλωση ενέργειας για την απόκτηση των δεδοµένων Latency (Access time): Ο χρόνος που περνάει (κατά µέσο όρο) από τη στιγµή που ο κινητός πελάτης κάνει αίτηση για κάποια δεδοµένα µέχρι τη στιγµή που τα δεδοµένα αυτά έρχονται στην κατοχή του πελάτη Probe wait: Ο µέσος χρόνος από τη στιγµή συντονισµού στο κανάλι µέχρι να βρει τον δείκτη (pointer) για τον επόµενο index. Είναι ίσος µε το µισό της απόστασης µεταξύ δυο τµηµάτων index. Bcast wait: Ο µέσος χρόνος από τη στιγµή που βρίσκεται ο πρώτος index µέχρι να κατεβούν όλα τα δεδοµένα

49 Παράµετροι ενδιαφέροντος (2/2) Querying Tuning time Latency Probe wait Bcast wait

50 Οργάνωση του καναλιού εκποµπής Packet: η βασική (µικρότερη) µονάδα µεταφοράς µηνυµάτων στα δίκτυα Bucket: η µικρότερη λογική µονάδα εκποµπής. Αποτελείται από σταθερό αριθµό packets. Όλα τα buckets έχουν το ίδιο µέγεθος Index buckets Data buckets Index Segment: σύνολο συνεχόµενων index buckets Data Segment: σύνολο συνεχόµενων data buckets

51 Οργάνωση του καναλιού εκποµπής Περιεχόµενα bucket Bucket_id: το offset του bucket από την αρχή του κύκλου εκποµπής Bcast_pointer: το offset µέχρι την αρχή του επόµενου κύκλου εκποµπής Index_pointer: το offset µέχρι την αρχή του επόµενου index segment Bucket_type: data bucket ή index bucket Index bucket: είναι µια ακολουθία της µορφής: (attibute_value, offset): offset είναι ένας δείκτης στο bucket που περιέχει εγγραφή που προσδιορίζεται από την attribute_value

52 Clustering index Clustering index: ένα ευρετήριο (index) είναι clustered πάνω σε ένα attribute, εάν όλες οι εγγραφές µε την ίδια τιµή για το attribute αυτό, εµφανίζονται συνεχόµενες σε ένα αρχείο Τα δυο άκρα στην βελτιστοποίηση Tuning time και Acceess time Latency_opt Tune_opt

53 Latency OPT File Previous bcast ---------- Next bcast Latency είναι η βέλτιστη: εν υπάρχει επιβάρυνση για το index Latency = Data/2 + C Tuning time = Data/2 + C

54 Tuning OPT Previous bcast File Index ---------- Next bcast Tuning time είναι ο βέλτιστος: Latency = (Data + Index) / 2 + (Data + Index) / 2 + C = Data + Index + C Tuning time = k + C k: number of levels in the index tree

55 (1, m) Indexing Το ευρετήριο (index) εκπεµπεται m φορές κατά τη διάρκεια µιας εκποµπής του αρχείου. Πολυεπίπεδο ευρετήριο (index), δηλαδή δένδρο Ολόκληρος ο index εκπέµπεται πριν από το 1/m κοµµάτι του αρχείου. Data 1 Data 2 Data m Previous bcast Index 1 Index 2 Index 3 ---------- Index m Next bcast Tune in Next Index Pointer Continuous Retrieving Client Active Doze Client Active Doze Client Active

56 Ανάλυση (1, m) Indexing Η κατανοµή πιθανότητας του initial probe για τους πελάτες είναι οµοιόµορφη Data: το µέσο µέγεθος του αρχείου C: η coarseness του index attribute Ο index έχει δείκτες µόνο στην πρώτη εµφάνιση εγγραφής µε συγκεκριµένη τιµή για το attribute Άρα, κατασκευάζουµε ευρετήριο µόνο για (Data/C ) data buckets n, η χωρητικότητα ενός bucket, δηλ., ο αριθµός των ζευγών (attribute_value,offset) που µπορεί να στεγάσει k: ο αριθµός των επιπέδων του ευρετηρίου Index: ο αριθµός των buckets του

57 Ανάλυση (1, m) Indexing Όταν το δένδρο είναι πλήρως ισοζυγισµένο Latency:

58 Ανάλυση (1, m) Indexing Tuning time: Βέλτιστο m για ελαχιστοποίηση Latency: Παραγώγιση την εξίσωση της Latency ως προς m Εξίσωση µε 0 Επίλυση ως προς m

59 Distributed Indexing Βελτίωση του (1,m) index ελαττώνοντας τη replication του index εν χρειάζεται να εκπέµπεις ολόκληρο τον index µεταξύ διαδοχικών data segments, αλλά µόνο το κοµµάτι του που δεικτοδοτεί τα data που έπονται.

60 Παράδειγµα εργασίας (1/2)

61 Παράδειγµα εργασίας (2/2)

62 Εναλλ. µέθοδοι index distribution Nonreplicated Distribution: διαφορετικά κοµµάτια index segments είναι διακριτά, δηλ., δεν υπάρχει replication. Entire Path Replication: Το µονοπάτι από τη ρίζα µέχρι ένα index bucket Β γίνεται replication ακριβώς πριν την εµφάνιση του B. Partial Path Replication: Έστωσαν δυο index buckets Β και Β. Είναι αρκετό να κάνουµε replication το µονοπάτι από τον ελάχιστο κοινό πρόγονο (Least Common Ancestor) των B και B, πριν την εµφάνιση του B, δεδοµένου ότι προσθέτουµε κάποια επιπρόσθετη indexing πληροφορία για προσανατολισµό.

63 Nonreplicated Distribution

64 Entire Path Replication

65 Distributed Indexing

66 Exponential Index (1/2) Data buckets Data part Index table Index entries: κάθε entry indexes ένα segment από buckets και έχει τη µορφή {distint, maxkey}»distint:καθορίζει την απόσταση των buckets από το τρέχον bucket (µετρηµένο σε αριθµό buckets)»maxkey: είναι η τιµή του µέγιστου κλειδιού αυτών των buckets Τα µεγέθη των segments αυξάνουν εκθετικά (δυνάµεις του 2). Η i- οστή entry περιγράφει το segment των buckets τα οποία είναι σε απόσταση 2 i-1 έως 2 i -1 Προφανώς οι τιµές distint δεν χρειάζονται αφού µπορούν εύκολα να συναχθούν

67 Exponential Index (2/2)

68 Κυρτά πρότυπα προσπέλασης Τι γίνεται όταν το πρότυπο προσπέλασης στις εγγραφές δεν είναι οµοιόµορφο? Τα ευρετήρια που παρουσιάσαµε είναι κατάλληλα για οµοιόµορφα πρότυπα προσπέλασης n: αριθµός εγγραφών R i : i-οστή εγγραφή Pr(R i ): πιθανότητα προσπέλασης εγγραφής R i I pb (R i ): αριθµός index nodes µέχρι να φτάσουµε στην εγγραφή ή index node R i a i : αναπαριστά έναν index node d(a i ): fanout του κόµβου a i Path(R i ): σύνολο των index nodes από τη ρίζα µέχρι την εγγραφή R i f(a i ): κόστος ενεργοποίησης index node a i. Συνήθως f(a i )=d(a i ).

69 Ισοζυγισµένα δενδρικά ευρετήρια Έστω ότι το µέσο κόστος εντοπισµού µιας εγγραφής εκφάζεται ως: Το διπλανό ευρετήριο είναι βέλτιστο για οµοιόµορφη πιθανότητα προσπέλασης. Μέσο κόστος:c(t B d=3) = 6

Μη ισοζυγισµένα δενδρικά ευρετήρια 70 σταθερού fanout [π.χ., d=3] C(T I d=3) = 0.4*3+0.4*3+ [για R 1 και R 2 ] 0.05*(3+3)+ [για R 3 ] 0.05*(3+3+3)+ [για R 4 ] 5*0.02*(3+3+3) [για υπόλοιπες] = 0.4*6+0.05*15+45*0.02 = 4.28 Σειρά εκποµπής στο ασύρµατο κανάλι

71 Αλγόριθµος κατασκευής T I d=j Κατασκευάζει ένα Huffman δένδρο µε fanout = d. Στο βασικό Huffman δένδρο, fanout = 2.

Μη ισοζυγισµένα δενδρικά ευρετήρια 72 σταθερού fanout [π.χ., d=2]

Μη ισοζυγισµένα δενδρικά ευρετήρια 73 σταθερού fanout [π.χ., d=4]

Μη ισοζυγισµένα δένδρα σταθερού 74 fanout εν υπάρχει µονοτονική σχέση, ούτε αύξουσα ούτε φθίνουσα, για τις τιµές κόστους C(T I d=j ) σε σχέση µε το επιτρεπτό fanout j. Αυτό το γεγονός, σε συνδυασµό µε την ιεραρχική φύση της κατασκευής, υπονοεί ότι, επιτρέποντας µεταβλητά fanouts στους κόµβους του δένδρου, µπορούµε να ελαττώσουµε ακόµα περισσότερο το µέσο κόστος εντοπισµού των εγγραφών

75 Βασική ιδέα (1/2)

76 Βασική ιδέα (2/2)

Μη ισοζυγισµένα δένδρα µεταβλητού 77 fanout T I V : Αλγόριθµος κατασκευής

Μη ισοζυγισµένα δένδρα µεταβλητού 78 fanout T I V : Αλγόριθµος κατασκευής

79 Παράδειγµα κατασκευής T I V (1/6)

80 Παράδειγµα κατασκευής T I V (2/6)

81 Παράδειγµα κατασκευής T I V (3/6)

82 Παράδειγµα κατασκευής T I V (4/6)

83 Παράδειγµα κατασκευής T I V (5/6)

84 Παράδειγµα κατασκευής T I V (6/6) C(T I V)= 5.08

85 Αντιδιαστολή T I V µε T I d=2 και T I d=3 C(T I d=2)= 5.20 C(T I d=3)= 5.625

86 Αλφαβητικά δενδρικά ευρετήρια Οµοιόµορφη προσπέλαση & ταξινοµηµένα κλειδιά (1,m) indexing Distributed indexing Exponential indexing Μη οµοιόµορφη προσπέλαση & µη ταξινοµηµένα κλειδιά T I d=j T I V Μη οµοιόµορφη προσπέλαση & ταξινοµηµένα κλειδιά????

Το πρόβληµα των Huffman δένδρων 87

88 Τα Alphabetic δένδρα

Παράδειγµα κατασκευής 89 δυαδικού αλφαβητικού δένδρου Α B C D E F G H I J K 8 6 2 3 4 7 11 9 8 1 3

90 Παράδειγµα Alphabetic tree (1/4) 8 13 9 11 9 12 9 8 6 7 11 9 12 8 6 9 7 11 9 8 4 8 6 5 4 7 11 9 8 4 8 6 2 3 4 7 11 9 8 4 8 6 2 3 4 7 11 9 8 1 3

91 Παράδειγµα Alphabetic tree (2/4) 62 37 25 17 25 20 17 13 20 12 17 13 11 9 12 8 13 9 11 9 12

92 Παράδειγµα Alphabetic tree (3/4) 2 2 3 3 3 3 Συνεχίζουµε όµοια. Τελικά 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 3 3 4 4 3 3 5 5 4 3 3 3 3 4 4 Ακολουθία επιπέδων

93 Alphabetic tree (4/4) 62 F B 30 32 14 16 E 20 12 I A/8 B/6 9 F/7 G/11 H/9 I/8 4 5 E/4 J/1 K/3 C/2 D/3