ÊáëçóðÝñá óáò.
ž÷ù ìéá áðïñßá ó÷åôéêÜ ìå ôï ðñùôüêïëëï cache coherence MESI.
Ç áðïñßá ìïõ åßíáé ç åîÞò: žóôù üôé Ý÷ïõìå Ýíá åðåîåñãáóôÞ Á , ï ïðïßïò Ý÷åé Ýíá cache line óå Modified êáôÜóôáóç êáé Ýíá åðåîåñãáóôÞ Â , ï ïðïßïò æçôÜåé ôï block áõôü ìå BUSRDX ðñïêåéìÝíïõ íá ôï ôñïðïðïéÞóåé. Óôçí ðåñßðôùóç áõôÞ ôï flush ðïõ èá êÜíåé ï åðåîåñãáóôÞò Á èá ôï êÜíåé ðñïò ôçí êýñéá ìíÞìç êáé ï  èá ðÜåé áðü ôçí êýñéá ìíÞìç "íá ðÜñåé" ôï cache line ðïõ èÝëåé Þ ï Á èá ôï êÜíåé flush êáé ðñïò ôïí åðåîåñãáóôÞ Â êáé ðñïò ôç êýñéá ìíÞìç? Åðßóçò, áí åß÷á åðßóçò Ýíá cache line óå modified êáôÜóôáóç êáé ôï æçôïýóå Ýíáò Üëëïò åðåîåñãáóôÞò áõôÞ ôç öïñÜ ìå BUSRD(ìå óêïðü áðëÜ íá ôï äéáâÜóåé) ôüôå ôï flush èá ãéíüôáí ðñïò ôçí êýñéá ìíÞìç êáé èá ôï äéÜâáæå áðü åêåß ï Ýôåñïò åðåîåñãáóôÞò? ÔÝëïò, áí åß÷á Ýíá cache line óå êáôÜóôáóç shared êáé ôï æçôïýóå Ýíáò Üëëïò åðåîåñãáóôÞò ãéá áíÜãíùóç Þ ôñïðïðïßçóç ôï flush ðïõ èá Ýêáíá óôçí ðåñßðôùóç áõôÞ èá ãéíüôáí áðåõèåßáò êáé ìüíï óôçí cache ôïõ åðåîåñãáóôÞ áõôïý(êáé ü÷é óôç main memory) Þ ï åðåîåñãáóôÞò ðïõ Þèåëå ôï cache line èá Ýðñåðå íá ôï äéáâÜóåé áðü ôçí êýñéá ìíÞìç? Ãåíéêüôåñá, ðñïóðáèþ íá êáôáëÜâù áí ôï flush óôï êÜèå ðñùôüêïëëï ãßíåôáé ìüíï ðñïò ôçí cache ôïõ åêÜóôïôå åðåîåñãáóôÞ Þ ðñïò ôçí cache ôïõ êÜèå åðåîåñãáóôÞ êáé ôçí êýñéá ìíÞìç êáé áí äéáöïñïðïßåôáé ôï flush áíÜëïãá ìå ôçí êáôÜóôáóç ðïõ âñßóêåôáé ôï cache line.
Åõ÷áñéóôþ ðïëý åê' ôùí ðñïôÝôùí ãéá ôçí áðÜíôçóç. Óðýñïò ÌáóôïñÜêçò.
advcomparch@lists.cslab.ece.ntua.gr