DUAL CONSISTENCY STORE BUFFER FOR OUT OF ORDER PROCESSORS
Sawan Singh · 2019
Store-buffer e una parte importante dei moderni processori fuori servizio. Store-buffer consente ai negozi di ritirarsi nell'ordine del programma. L'archivio viene eseguito e memorizzato nella coda dell'archivio da cui viene eseguito il commit e quindi spostato nel buffer di archivio da dove vengono archiviati nella memoria nell'ordine del programma. Quando il buffer del negozio e pieno, le richieste del negozio devono attendere fino a quando non e disponibile un posto nel buffer del negozio. Questo genera uno stallo, quindi non consente ad altri negozi di entrare nel buffer del negozio. Cio peggiora se si verifica un errore in testa al buffer del negozio. Pertanto, fino a quando il problema non viene risolto, nessuna operazione nel buffer di memorizzazione puo essere eseguita in memoria per mantenere l'ordine del programma. Affrontiamo questo problema in questo lavoro. Il nostro lavoro porta ad un approccio in cui possiamo riordinare le operazioni nel buffer del negozio ed eseguirle fuori servizio senza violare l'ordine del programma. Abbiamo preso l'aiuto del compilatore per aiutarci a identificare i negozi che possiamo eseguire fuori servizio e abbiamo progettato un nuovo buffer del negozio con prestazioni in base alle informazioni fornite dal compilatore. Altre ottimizzazioni e configurazioni vengono anche eseguite e verificate per dare un'immagine piu ampia.