Syftet med detta arbete är att utforska arkitektoniska mekanismer för att stödja explicit kommunikation i cache-sammanhängande delade minnesmultiprocessorer. Motiveringen härrör från iakttagelsen att tillämpningar uppvisar stora skillnader i fråga om delningsegenskaper och därmed ställer olika kommunikationskrav på systemet. Explicit kommunikationsmekanismer skulle göra det möjligt att skräddarsy koherenshanteringen under programvarukontroll för att matcha dessa olika behov och sträva efter att ge en nära approximation till en noll overhead-maskin från applikationsperspektivet. För att uppnå dessa mål analyserar vi först egenskaperna hos delning som observerats i vissa specifika tillämpningar. Vi använder sedan dessa egenskaper för att syntetisera explicita kommunikation primitiva. De föreslagna primitiva kan selektivt uppdatera en uppsättning processorer, eller begära en ström av data före dess avsedda användning. Dessa primitiva är huvudsakligen generaliseringar av prefetch och poststore, med förmågan att specificera delaren inställd för poststore antingen statiskt eller dynamiskt. De föreslagna primitiva ska användas tillsammans med ett underliggande ogiltighetsbaserat protokoll. Används på detta sätt kan det resulterande minnessystemet dynamiskt anpassa sig till att utföra antingen invalideringar eller uppdateringar för att matcha kommunikationsbehoven. Genom tillämpningsdriven prestandastudie visar vi nyttan av dessa mekanismer för att kunna minska och tolerera kommunikationslatenser.
U. Ramachandran m.fl. utforskade uppsättningen programvarukontrollerade primitiver, vilket möjliggör selektiv uppdatering av cacheminnen, och generaliserade data prefetching REF.
Architectural Mechanisms for Explicit Communication in Shared Memory Multiprocessors
{'venue': 'Proceedings of the IEEE/ACM SC95 Conference', 'journal': 'Proceedings of the IEEE/ACM SC95 Conference', 'mag_field_of_study': ['Computer Science']}