Μπορεί κάποιος να εξηγήσει πώς λειτουργεί ο local history predictor? Βασικά δε μπορώ να καταλάβω τι πρέπει να κάνω μετά την πρόβλεψη.Αυξάνω την entry στον bht κατά 1 και την αντίστοιχη entry στον pht σύμφωνα με τις καταστάσεις του 2-bit predictor και ανάλογα αν το branch είναι taken η not-taken.Σωστά??Επίσης αρχικά όλα τα entries στους 2 πίνακες είναι 0 ή χρειάζεται κάποια άλλη αρχικοποίηση?
Καλημέρα,
στον BHT αποθηκεύεται το history ενώ στο PHT οι counters. Επομένως στο update αυξάνετε/μειώνετε τους counters και κάνετε shift left το history προσθέτοντας σαν τελευταίο bit 1 ή 0 αναλόγως με το αποτέλεσμα του branch.
Ο gshare που σας έχουμε δώσει αποτελεί καλό παράδειγμα, καθώς η διαφορά του από τον local-history είναι ότι έχει μόνο ένα entry για history αντί για ένα ολόκληρο table (--- η 2η διαφορά είναι το XOR που κάνει για να υπολογίσει το index). Επομένως μπορείτε να τον χρησιμοποιήσετε σαν βάση για να κατασκευάσετε τον predictor σας.
Όπου χρειάζεστε αρχικοποίηση θεωρείστε ότι ξεκινάτε από το 0.
Κ.
Μπορεί κάποιος να εξηγήσει πώς λειτουργεί ο local history predictor? Βασικά δε μπορώ να καταλάβω τι πρέπει να κάνω μετά την πρόβλεψη.Αυξάνω την entry στον bht κατά 1 και την αντίστοιχη entry στον pht σύμφωνα με τις καταστάσεις του 2-bit predictor και ανάλογα αν το branch είναι taken η not-taken.Σωστά??Επίσης αρχικά όλα τα entries στους 2 πίνακες είναι 0 ή χρειάζεται κάποια άλλη αρχικοποίηση?
Advcomparch mailing list Advcomparch@lists.cslab.ece.ntua.gr http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch
advcomparch@lists.cslab.ece.ntua.gr