kraken Δημοσιεύτηκε Σεπτέμβριος 5, 2014 #1 Κοινοποίηση Δημοσιεύτηκε Σεπτέμβριος 5, 2014 Μπορει κανεις να μου απαντησει σε αυτην την ερωτηση;Εστω οτι εχετε ενα υπολογιστικο συστημα με κρυφη μνημη οπου: εχετε100 blocks κυριας μνημης και8 θεσεις στην κρυφη μνημη για προσωρινη αποθηκευση των blocks τα οποια κραταΘεωρηστε οτι ερχονται αιτησεις για προσβαση στα παρακατω blocks της κύριας μνημης και με τη σειρα που σας διδεται: 18, 18, 23, 18, 14, 26, 24, 26, 18, 56, 88, 98, 66, 15, 34a. Σε περιπτωση που ειχατε οργανωση της cache με τεχνικη αμεσης απεικονισης (direct mapping) τοτε ποτε θα δημιουργηθει η αναγκη για αντικατασταση των περιεχομενων της cache για πρωτη φορα;b. Ποιο ειναι το cache hit ratio; (λογος επιτυχιας) Link to comment Share on other sites More sharing options...
Tsoureki Σεπτέμβριος 6, 2014 #2 Κοινοποίηση Σεπτέμβριος 6, 2014 (edited) a. Όταν κληθεί το block 66b. 4/15EDITED: Δες παρακάτω Έγινε επεξεργασία Σεπτέμβριος 7, 2014 από Tsoureki Link to comment Share on other sites More sharing options...
kraken Σεπτέμβριος 6, 2014 Author #3 Κοινοποίηση Σεπτέμβριος 6, 2014 Πρωτον, ευχαριστω!Δευτερον μπορεις να μου πεις πως το βρισκεις το δευτερο; Link to comment Share on other sites More sharing options...
kazabubu Σεπτέμβριος 7, 2014 #4 Κοινοποίηση Σεπτέμβριος 7, 2014 a. Όταν κληθεί το block 66b. 4/15Οταν κληθει το block 26 δε θα αντικατασταθει το block 18? Εμένα μου βγαίνει 3/15 αλλά μπορεί και να μη τα θυμάμαι καλά.. Link to comment Share on other sites More sharing options...
Tsoureki Σεπτέμβριος 7, 2014 #5 Κοινοποίηση Σεπτέμβριος 7, 2014 Αναφέρει 8 θέσεις στην cache. Link to comment Share on other sites More sharing options...
kazabubu Σεπτέμβριος 7, 2014 #6 Κοινοποίηση Σεπτέμβριος 7, 2014 (edited) Ναι και αναφέρει και τεχνική direct mapping οπότε αν το καταλαβαίνω καλά το 18 και το 26 θα πάνε και τα δυο στη θέση 1 (αν οι θέσεις της cache αριθμηθούν 0,1,2,3,4,5,6,7) και η αρίθμηση των 100 blocks ξεκινά από το 1.(ή στη θέση 2 αν η αρίθμηση των 100 ξεκινάει από το 0) Έγινε επεξεργασία Σεπτέμβριος 7, 2014 από kazabubu Link to comment Share on other sites More sharing options...
Tsoureki Σεπτέμβριος 7, 2014 #7 Κοινοποίηση Σεπτέμβριος 7, 2014 Ναι σωστό! Πρώτη αντικατάστασn είναι με το 26! Link to comment Share on other sites More sharing options...
kraken Σεπτέμβριος 8, 2014 Author #8 Κοινοποίηση Σεπτέμβριος 8, 2014 Υπαρχει καπου καποιο tutorial στο internet;Δεν εχω βρει τιποτα ουτε στα Αγγλικα. Link to comment Share on other sites More sharing options...
Tsoureki Σεπτέμβριος 8, 2014 #9 Κοινοποίηση Σεπτέμβριος 8, 2014 Υπάρχουν αρκετά tutorials στο internet μαζί με παραδείγματα. Η λογική είναι η εξής:-Βλέπεις πόσες θέσεις cache έχεις και ανάλογα με το πλήθος τους τις χωρίζεις σε όσο το δυνατόν περισσότερα Least Significant Bits. Επειδή εδώ έχεις μόνο 8, θα την χωρίσεις με βάση τα τελευταία 3 LSBs. (000,001,010,011,100,101,110,111)-Κατανέμεις μετά τα blocks στην cache ανάλογα με τα 3 LBSs τους. Για αυτό και το 26 αντικαθιστά το 18. Ανήκουν στα 010 - όπως και τα 98 και 66.Αν είχες 16 θέσεις cache δηλαδή 2^4, θα μπορούσες να τους διαχωρίσεις με βάση τα 4 LSBs. Link to comment Share on other sites More sharing options...
kazabubu Σεπτέμβριος 8, 2014 #10 Κοινοποίηση Σεπτέμβριος 8, 2014 Συγκεκριμένα για το direct mapping που είναι απλή περίπτωση, το να κρατήσεις τα 3 LSB που λέει και ο τσουρέκι είναι σαν να κάνεις ακέραια διαίρεση με το 8 (2^3) και να κρατάς το υπόλοιπο της διαίρεσης.Οπότε 18 modulo 8 = 2 (010)26 modulo 8 = 2 (010) Άρα πάνε στην ίδια θέση. Link to comment Share on other sites More sharing options...
kraken Σεπτέμβριος 9, 2014 Author #11 Κοινοποίηση Σεπτέμβριος 9, 2014 Ευχαριστω, το πρωτο ερωτημα κατανοητο!To hit ratio πως βγαινει ομως; Link to comment Share on other sites More sharing options...
nucleus Σεπτέμβριος 10, 2014 #12 Κοινοποίηση Σεπτέμβριος 10, 2014 Hit ratio βγαίνει αν διαιρέσεις τα hits (δηλαδή πόσες φορές βρήκε το item που ζητήθηκε στην cache,χωρίς να χρειαστεί να το φέρει από την κύρια μνήμη) με το σύνολο των αιτήσεων που έγινε στην cache.H σειρά σου είναι 18, 18, 23, 18, 14, 26, 24, 26, 18, 56, 88, 98, 66, 15, 34Συνολικά δηλαδή 15 requests όσα και τα blocks.Πρώτο request 18.Δεν υπάρχει στην cache οπότε μετράει σαν miss (πρέπει να το φέρει από την κύρια μνήμη και να το γράψει σε μια θέση στην cache)Δεύτερο request:18.Υπάρχει στην cache άρα είναι hit.Τρίτο request: 23 Δεν υπάρχει στην cache.Τέταρτο request:18 Υπάρχει στην cache άρα είναι hit.Κάνεις το παραπάνω για όλα τα requests λαμβάνοντας υπόψη και το πρώτο ερώτημα.Μόλις βρεις όλα τα hits διαιρείς με το 15. Link to comment Share on other sites More sharing options...
kraken Σεπτέμβριος 10, 2014 Author #13 Κοινοποίηση Σεπτέμβριος 10, 2014 Τεραστιος!Ευχαριστω πολυ. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now