Att förbättra den arkitektoniska energieffektiviteten är viktigt för att minska energieffektivitetsvinsterna från teknikskalning. Samtidigt är det också viktigt att begränsa hårdvarukomplexiteten. Detta dokument presenterar en ny processorarkitektur, idempotent processorarkitektur, som avancerar båda dessa riktningar genom att presentera ett nytt exekveringsparadigm som tillåter spekulativ körning utan behov av maskinvarukontrollpunkter för att återhämta sig från felspeculation, istället med hjälp av endast re-exekvering för att återhämta sig. Idempotent processorer kör program som en sekvens av kompilatorkonstruerade idempotent (återverkställbara) regioner. Dessa regioners karaktär gör det möjligt att återskapa ett exakt tillstånd genom att genomföra det på nytt, vilket undanröjer behovet av stöd för hårdvaruåtervinning. Vi bygger vidare på insikten att program naturligt sönderdelas i en rad idempotenta regioner och att dessa regioner kan vara stora. Paradigmet att utföra idempotent regioner, som vi kallar idempotent behandling, kan användas för att stödja olika typer av spekulationer, inklusive filial förutsägelse, beroende förutsägelse, eller utförande i närvaro av hårdvarufel eller undantag. I detta dokument visar vi hur idempotent bearbetning förenklar utformningen av i-order processorer. Konventionella i-order processorer lider av betydande komplexitet för att uppnå hög prestanda samtidigt som de stöder genomförandet av variabla latency instruktioner och genomdriva exakta undantag. Idepotent behandling eliminerar mycket av dessa komplexiteter och de resulterande ineffektiviteter genom att tillåta instruktioner att dra sig ur ordningen med stöd för re-exekvering när det är nödvändigt för att återställa exakt tillstånd. Genom en rad olika referenssviter visar våra kvantitativa resultat att vi får en geometrisk genomsnittlig prestandaökning på 4,4 % (upp till 25 % och därefter) samtidigt som vi bibehåller en total minskning av kraft- och hårdvarukomplexiteten.
Ett relevant arbete som presenteras i REF, introducerar begreppet idempotent utförande och motsvarande arkitektur som inte kräver att ha uttryckliga kontrollpunkter för att återhämta sig från felspekulation eller fel.
Idempotent processor architecture
{'venue': 'MICRO-44', 'journal': None, 'mag_field_of_study': ['Computer Science']}