Καλησπέρα και χρόνια πολλά,
Έχω μια απορία σχετικά με τον τύπο υπολογισμού των κύλων που δίνεται στην εκφώνηση της άσκησης. Συγγεκριμένα, τα accesses τις L1 πως ακριβώς υπολογίζονται? Πρέπει να υπολογίσουμε το άθροισμα των total number of transactions για την insruction και τη data cache η αρκούν μόνο τα transactions της instruction cache?
Ευχαριστώ πολυ
Επεκτείνοντας την απορία της Zoe Par, θα ήθελα μια επιβεβαίωση σχετικά με το κατά πόσο τα ακόλουθα είναι αληθή:
Στο μοντέλο:
Cycles = Inst + L1_Accesses * L1_Time + L2_Accesses * L2_Time + Mem_Accesses * Mem_Time
οι διάφορες παράμετροι αντιστοιχίζονται στο output του simics ως εξής:
L1_Accesses = dc.Total Number of Transactions + ic.Total Number of Transactions L2_Accesses = l2c.Total Number of Transactions Mem_Accesses = l2c.Data Read Misses + l2c.Data Write Misses , με το σκεπτικό πώς επισκεπτόμαστε τη μνήμη μόνο αν δεν έχουμε βρει αυτό που θέλουμε να διαβάσουμε/γράψουμε δεν το βρίσκουμε ούτε στη L2 cache.
Επιπλέον, διακρίνουμε δύο miss rates:
dc.miss_rate = (dc.write misses + dc.read misses) / (dc.data write transactions + dc.data write transactions), για την L1 data cache και
ic.miis_rate = (ic.instruction fetch misse / ic. instruction fetch transactions)
Ευχαριστώ πολύ εκ των προτέρων. On Tue, Apr 17, 2012 at 6:09 PM, Zoe Par zoe.paraskevopoulou@gmail.comwrote:
Καλησπέρα και χρόνια πολλά,
Έχω μια απορία σχετικά με τον τύπο υπολογισμού των κύλων που δίνεται στην εκφώνηση της άσκησης. Συγγεκριμένα, τα accesses τις L1 πως ακριβώς υπολογίζονται? Πρέπει να υπολογίσουμε το άθροισμα των total number of transactions για την insruction και τη data cache η αρκούν μόνο τα transactions της instruction cache?
Ευχαριστώ πολυ _______________________________________________ Advcomparch mailing list Advcomparch@lists.cslab.ece.ntua.gr http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch
Καλησπέρα,
η άσκηση ακολουθεί το μοντέλο του επεξεργαστή που έχετε διδαχθεί στο μάθημα. Δηλαδή ο επεξεργαστής φέρνει κάθε εντολή από την I-Cache, την εκτελεί και εφόσον η εντολή είναι εντολή μνήμης πηγαίνει στην D-Cache.
To Ιnst στον τύπο υπολογισμού των κύκλων προκύπτει από το ότι ο επεξεργαστής έχει CPI=1.
Από εκεί και πέρα, αν μια πρόσβαση σε ένα επίπεδο μνήμης αποτύχει (miss) τότε πηγαίνει στο επόμενο επίπεδο (L1 -> L2 -> Mem).
K.
On 18/04/12 15:10, Dimitris Konomis wrote:
Επεκτείνοντας την απορία της Zoe Par, θα ήθελα μια επιβεβαίωση σχετικά με το κατά πόσο τα ακόλουθα είναι αληθή:
Στο μοντέλο:
Cycles = Inst + L1_Accesses * L1_Time + L2_Accesses * L2_Time + Mem_Accesses * Mem_Time
οι διάφορες παράμετροι αντιστοιχίζονται στο output του simics ως εξής:
L1_Accesses = dc.Total Number of Transactions + ic.Total Number of Transactions L2_Accesses = l2c.Total Number of Transactions Mem_Accesses = l2c.Data Read Misses + l2c.Data Write Misses , με το σκεπτικό πώς επισκεπτόμαστε τη μνήμη μόνο αν δεν έχουμε βρει αυτό που θέλουμε να διαβάσουμε/γράψουμε δεν το βρίσκουμε ούτε στη L2 cache.
Επιπλέον, διακρίνουμε δύο miss rates:
dc.miss_rate = (dc.write misses + dc.read misses) / (dc.data write transactions + dc.data write transactions), για την L1 data cache και
ic.miis_rate = (ic.instruction fetch misse / ic. instruction fetch transactions)
Ευχαριστώ πολύ εκ των προτέρων. On Tue, Apr 17, 2012 at 6:09 PM, Zoe Par <zoe.paraskevopoulou@gmail.com mailto:zoe.paraskevopoulou@gmail.com> wrote:
Καλησπέρα και χρόνια πολλά, Έχω μια απορία σχετικά με τον τύπο υπολογισμού των κύλων που δίνεται στην εκφώνηση της άσκησης. Συγγεκριμένα, τα accesses τις L1 πως ακριβώς υπολογίζονται? Πρέπει να υπολογίσουμε το άθροισμα των total number of transactions για την insruction και τη data cache η αρκούν μόνο τα transactions της instruction cache? Ευχαριστώ πολυ _______________________________________________ Advcomparch mailing list Advcomparch@lists.cslab.ece.ntua.gr <mailto:Advcomparch@lists.cslab.ece.ntua.gr> http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch
Advcomparch mailing list Advcomparch@lists.cslab.ece.ntua.gr http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch
advcomparch@lists.cslab.ece.ntua.gr