[Advcomparch] Απορίες για το MESI protocol

Εμμανουήλ Βλατάκης-Γκαραγκού Εμμανουήλ Βλατάκης-Γκαραγκού
Tue Jul 7 00:54:44 EEST 2015


>
>
> Α)

> Έστω ο ορισμός που δώσατε στο Flush,  δηλαδή """παρέχει τα data στον
> επεξεργαστή που τα ζήτησε""".Να ρωτήσω κάτι και στο MSI, MESI γιατί όταν
> έχω στο E/M το block και ο άλλος θέλει να γράψει κάτι σε αυτό πρέπει εγώ να
> του στείλω με Flush αυτό που έχω. Αφού έτσι και αλλιώς σκοπεύει να το
> τροποποιήσει.
> Άρα τι νόημα έχει να κάνω Flush, αφού την πληροφορία μου θα την πετάξει,
> αφού σκοπεύει να κάνει WRITE?
>
> Τι συμβαίνει σε αυτή την λεπτομέρεια.
>

Το μόνο που συμβαίνει και μπορώ να φανταστώ εγώ είναι αν χρησιμοποιούσαμε
π.χ σε πιο upper level το MESI, πρωτόκολλο π.χ για DataBase Coherence. Τότε
κάνοντας flush στο BusWRITE demand κάποιου άλλου, αφήνεις τον άλλο να λάβει
το exclusiveness αλλά έχοντας δώσει την πληροφορία σου στο bus, μπορείς την
μνήμη [global database] να την ενημερώσεις για τα δικά σου αποτελέσματα. Η
μνήμη θα παραμείνει invalid γιατί κάποια ακόμα πιο νέα πληροφορία θα
γραφτεί, αλλά θα έχει προχωρήσει τουλάχιστον στο ιστορικό, πράγμα που σε
επίπεδο ας πούμε βάσης δεδομένων θα το θέλαμε.

Β)
Ένα συναφές ζήτημα με τις συνολικές απορίες είναι το cache coherence miss
σύστημα.
Θα μου φαινόταν λογικό να έπρεπε να θεωρώ ότι εμφανίστηκε miss κάθε φορά
που θα χρειαστεί να γράψω για κάποιο λόγο στο bus. Κάτι τέτοιο όμως δεν
επαληθεύεται στις λύσεις στο θέμα του Ιουλίου του 2012.
Π.χ
+) όταν γίνονται από exclusive shared πράγματα δεν έχω coherence miss.
 [πρώτα 6 miss]
+)Επίσης αν τύχει κάποιος άλλος να έχει exclusive και εγώ να το παίρνω για
πρώτη φορά το block και θέλω να γράψω έχω μόνο compulsory, ενώ σίγουρα
κάποιον μόλις τον έκανα invalid [7o με 10ο miss Μεταξυ P0,P1]
+) Ενώ στον αντίποδα αν ακριβώς έχει συμβεί για δεύτερη φορά αυτό [19ο με
21ο miss, Μεταξυ P0,P1]

Αν μπορείτε δώστε μας ένα clarification σε αυτό το ζήτημα



Στις 2 Ιουλίου 2015 - 12:36 π.μ., ο χρήστης Βασίλειος Χαρισόπουλος <
el10046 at central.ntua.gr> έγραψε:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> Καλησπέρα,
>
> έχω 2 απορίες για την συμπεριφορά του πρωτοκόλλου MESI που έχουν να κάνουν
> με τα flushes.
> Συγκεκριμένα, έστω τα 2 ακόλουθα σενάρια για σύστημα με 2 επεξεργαστές, ο
> καθένας με τη δικιά του cache, αναφερόμενος πάντα στο ίδιο block.
>
> 1) Έστω ότι σε κάποια φάση βρισκόμαστε στην κατάσταση (Modified, Invalid)
> και ο P2 κάνει read. Ο P1 θα παρατηρήσει το BusRd και θα κάνει flush. Τα
> δεδομένα που θα κάνει flush "πάνε" μόνο στην κύρια μνήμη ή και στον P2?
> Δηλαδή ο P2 θα χρειαστεί να περιμένει την μεταφορά από P1 -> cache και
> έπειτα cache -> P2 ή θεωρούμε πως ένα flush ενημερώνει και τον επεξεργαστή
> που το ζήτησε;
>
> Εάν η απάντηση είναι ότι το flush ενημερώνει μονάχα την κύρια μνήμη και
> δεν κάνει κάποιο cache-to-cache transfer, προκύπτει η εξής απορία:
>
> 2) Έστω ότι είμαστε στην κατάσταση (Exclusive, Invalid) και ο P2 κάνει
> Read. Για ποιο λόγο -όπως φαίνεται στο FSM του MESI- ο P1 να κάνει απλό
> flush (άρα να ενημερώσει την κύρια μνημη και ο P2 να πρέπει να περιμένει
> για αυτή την ενημέρωση) και όχι flush' (που αφορά μονάχα cache-to-cache
> transfers) εφόσον το αντίγραφο που διαθέτει δεν διαφέρει από αυτό της
> κύριας μνήμης?
>
> Ευχαριστώ προκαταβολικά.
>
>
> - --
> “The method of doubt must be applied to civilization; we must doubt its
> necessity, its excellence, and its permanence.”
> - -Charles Fourier
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2
>
> iQIcBAEBCAAGBQJVlF1gAAoJEIdZW/3eEQLNBc8P/i1bAr19LQ/wWm3erEctSvOA
> tO5oCp9EnN/zsZzVY1U6i4jEYfPVzku77DLqtCM9rKF9n2N4QAv4qz7hQzqrR1In
> XD2IP+9zwDzAgnQ3OfOY6CFQJLIe9ySuLhUfLlBf1rcfStWkkYu+ER9JCryKyEgA
> pCzVHSc3O3njXx6NrPGM8JGgArxMECAvJDrEDp1P/+26JH6CY6CgI+Hnn/ESHPhN
> IW+31Y8l/lZFRR5TGof9J5YpHAoU0KFjtIGc6FkBYfvnuZMNGfhPq50it2/T25EU
> hUsYO95JrtwzHlMpeu8llcBVap/nDV+b+eHx1FYoeMZSDPItHlvFeZu9ho69OP/J
> H/wmHl0f5wWCoDDGPTa8NZIjj7+NjjBJnklVXQUpn64CtqrxihSanqkV9NnWk9Eu
> 2C9B/573h/wA74HwyM9azO/uZhc+dgnsSsFvGwiL8IRENLWaupiJrUkkRoAJxa2w
> 2Eyui0GFyc/VVokL+sHYx+xtvi3+frazNDpricJUdHPpsu15XsPu+bQEU/mDSMTZ
> +kn4DwTCjQIZwsq+5qg/26SXdfYSepKvv6lpfoJx/tqLx42XcBWuprPMVmN/fKm5
> xyfpN6wBzPEtDlfanEILQYw6iqYdWpx5EkTW8t/OUdXcH2zqh7b+OERAxfNn7Ohl
> 0C/U48hc3JTucddOjjzK
> =r9Tj
> -----END PGP SIGNATURE-----
> _______________________________________________
> Advcomparch mailing list
> Advcomparch at lists.cslab.ece.ntua.gr
> http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cslab.ece.ntua.gr/pipermail/advcomparch/attachments/20150707/2abbee13/attachment.htm>


More information about the Advcomparch mailing list